鱼C论坛

 找回密码
 立即注册
查看: 1260|回复: 7

中间过程(如list.reverse, list.count(123))与print合并在一行?

[复制链接]
发表于 2019-6-30 10:49:01 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能^_^

您需要 登录 才可以下载或查看,没有账号?立即注册

x
您好

我再Pycharm中执行如下程序,运行正常:
list = [123, 346, 123, 678, 123, 235, 564, 123]
list.reverse()
print(list)

但如下则不行:
list = [123, 346, 123, 678, 123, 235, 564, 123]
print(list.reverse())

而我运行如下的又是可以的:
list = [123, 346, 123, 678, 123, 235, 564, 123]
print(list.count(123))

那我的问题是什么情况下可以将中间过程(如list.reverse, list.count(123))与print合并在一行? 谢谢
小甲鱼最新课程 -> https://ilovefishc.com
回复

使用道具 举报

发表于 2019-6-30 11:15:20 From FishC Mobile | 显示全部楼层
list.reverse()无返回值
而那个list.count 有返回值

好好学学函数这部分
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2019-6-30 11:39:38 | 显示全部楼层
对的,因为你print(list.reverse())这样的话打印的是list.reverse()的返回值,而不是print(list)

首先要知道函数三大要素:返回值,函数名,函数参数
list.reverse()这个函数,它本身无返回值,作用是反转了list这个列表,依旧存储在list。
所以你print(list)就正常显示出列表。
而list.count()这个函数返回值就是统计某个的个数,所以直接打印就是打印他的返回值。

所以只能将list.reverse()分开,不能和list.count合并在一起。
  1. lst = [123, 346, 123, 678, 123, 235, 564, 123]
  2. lst.reverse()
  3. print(lst, lst.count(123))
复制代码

小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2019-6-30 14:37:27 | 显示全部楼层
newu 发表于 2019-6-30 11:39
对的,因为你print(list.reverse())这样的话打印的是list.reverse()的返回值,而不是print(list)

首先要 ...

明白啦,非常感谢
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2019-6-30 14:40:02 | 显示全部楼层

不客气
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2019-6-30 15:29:16 | 显示全部楼层
有个变通的办法,不过写起来更晦涩了。
  1. >>> list1 = [1, 2, 3, 4]
  2. >>> print(*filter(None, (list1, list1.reverse())))
  3. [4, 3, 2, 1]
复制代码
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2019-6-30 15:56:35 | 显示全部楼层
冬雪雪冬 发表于 2019-6-30 15:29
有个变通的办法,不过写起来更晦涩了。

有点东西
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2019-6-30 23:24:43 | 显示全部楼层
冬雪雪冬 发表于 2019-6-30 15:29
有个变通的办法,不过写起来更晦涩了。

自己弄复杂了。
  1. >>> list1 = [1, 2, 3, 4]
  2. >>> print((list1, list1.reverse())[0])
  3. [4, 3, 2, 1]
复制代码
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2026-1-16 15:19

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表