鱼C论坛

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

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

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

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

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

x
在print中可以很方便的加入if else表达式,简化程序。比如:
>>> a = 6
>>> print('A是奇数' if a % 2 else 'A是偶数')
A是偶数
>>> a = 7
>>> print('A是奇数' if a % 2 else 'A是偶数')
A是奇数
再如,打印一批数字,需要4个一换行:
>>> for i in range(1,21):
        print(i, '\t' if i % 4 else '\n',end='')

        
1         2         3         4 
5         6         7         8 
9         10         11         12 
13         14         15         16 
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-11-22 05:50

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

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