python 把if 写在一行的两种方式


  第一种:列表生成式

# info = '姓名=小王&年龄=16&身高=175' # 用一行代码,得到其中的年龄数字,不要数索引
info = '姓名=小王&年龄 = 16&身高=175' [print(one.strip('年龄='))  for one in info.replace(' ','').split('&') if '年龄=' in one]

第二种:类似if-then语句 a=1 if a>0 else 0 如果a>0,a赋值1,否则赋值0。
# 尽量用一行代码统计中字符串中重复出现的字符(大小写敏感),要求输出格式{字符:字符出现的次数}
# 输入:str1='AIDlkdiDKIfheihfufh'
str1='AIDlkdiDKIfheihfufh' counter={} for i in str1: if i in counter: counter[i]+=1
    else: counter[i]=1
print(counter)

优化后:

str1='AIDlkdiDKIfheihfufh' counter={} for i in str1: counter[i] =counter[i]+ 1 if i in counter else 1
print(counter)

 

 


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM