鱼C论坛

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

[技术交流] 灵活运用print函数中的if表达方式

[复制链接]
发表于 2015-12-7 10:42:11 | 显示全部楼层 |阅读模式

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

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

x
在print中可以很方便的加入if else表达式,简化程序。比如:
  1. >>> a = 6
  2. >>> print('A是奇数' if a % 2 else 'A是偶数')
  3. A是偶数
  4. >>> a = 7
  5. >>> print('A是奇数' if a % 2 else 'A是偶数')
  6. A是奇数
复制代码

再如,打印一批数字,需要4个一换行:
  1. >>> for i in range(1,21):
  2.         print(i, '\t' if i % 4 else '\n',end='')

  3.        
  4. 1         2         3         4
  5. 5         6         7         8
  6. 9         10         11         12
  7. 13         14         15         16
  8. 17         18         19         20
复制代码

python的灵活性和方便性可见一斑。

评分

参与人数 1荣誉 +5 鱼币 +5 贡献 +5 收起 理由
~风介~ + 5 + 5 + 5 感谢楼主无私奉献!

查看全部评分

本帖被以下淘专辑推荐:

想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2015-12-8 10:00:37 | 显示全部楼层
延伸了一下,应该不只在print函数中可用,在其他函数中也可用,(括号好像不用包含全部。)
a = int('7') if False else '8'
print(a)
---
8
------
a = ['1', '2', '3']
b = ['4', '5', '6']

c = map(int, a if False else b)
print(c)
---
[4, 5, 6]
@~风介~

评分

参与人数 1荣誉 +3 鱼币 +3 贡献 +3 收起 理由
~风介~ + 3 + 3 + 3 支持楼主!

查看全部评分

想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2015-12-7 23:05:28 | 显示全部楼层
第一次发现还有这种技巧!@wei_Y
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2015-12-7 23:09:04 | 显示全部楼层
~风介~ 发表于 2015-12-7 23:05
第一次发现还有这种技巧!@wei_Y

嗯,我也是偶然发现的。
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2015-12-8 10:26:07 | 显示全部楼层
wei_Y 发表于 2015-12-8 10:00
延伸了一下,应该不只在print函数中可用,在其他函数中也可用,(括号好像不用包含全部。)
a = int('7') if ...

很神奇的。
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2015-12-8 11:38:22 | 显示全部楼层
print('A是奇数' if a % 2=1 else 'A是偶数')   
这个是不是因为运算的 优先级不一样呀?
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2015-12-8 11:39:45 | 显示全部楼层

print('A是奇数' if a % 2==1   else 'A是偶数')   
这个是不是因为运算的 优先级不一样呀?
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2015-12-8 11:57:35 | 显示全部楼层
858900276 发表于 2015-12-8 11:38
print('A是奇数' if a % 2=1 else 'A是偶数')   
这个是不是因为运算的 优先级不一样呀?

应该是if判断优先
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

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

本版积分规则

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

GMT+8, 2024-4-28 03:49

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

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