python多重赋值
本帖最后由 axllen 于 2021-2-4 12:19 编辑想把一个字符串的值赋给几个变量,这样的话没有问题
str1 = '1/2/3'
a, b, c = str1.split('/')
加上一个判断条件就有问题了,a 的结果为['1', '2', '3'],b 和 c 是空
a, b, c = str1.split('/') if str1 != '' else '', '', ''
如果这样判断又没问题
if str1 != '':
a, b, c = str1.split('/')
else:
a, b, c = '', '', ''
求指教,谢谢!
本帖最后由 cqfcy 于 2021-2-4 11:21 编辑
a, b, c = str1.split('/') if (str1 != '') else ('', '', '')
逗号不是运算符而是表达式之间的分隔符,应该理解成这样了
a, b, c = (str1.split('/') if str1 != '' else ''), '', ''
这才是正确的解包姿势
a, b, c = str1.split('/') if (str1 != '' ) else ('', '', '') 哈哈我还以为发的赛风呢刚准备下载冲个浪{:1_924:} 谢谢楼上的讲解
页:
[1]