专业的JAVA编程教程与资源

网站首页 > java教程 正文

Python | 列表生成式、三元表达式

temp10 2024-12-03 02:48:57 java教程 14 ℃ 0 评论

1、列表生成式

i for i in 列表

在不用列表生成式时,生成一个 从0~10 的列表,并用0补齐

numbers =list(range(1,11))
numbers2=list()
for n in numbers:
    n=str(n)                #将遍历取出来的元素改成字符串格式
    new_n=n.zfill(2)        #将字符串用0补齐
    numbers2.append(new_n)  #给空列表添加元素
print(numbers2)

运行后>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
['01', '02', '03', '04', '05', '06', '07', '08', '09', '10']

利用列表生成式,生成一个 从0~10 的列表,并用0补齐

Python | 列表生成式、三元表达式

numbers =list(range(1,11))
numbers3=list(str(i).zfill(2) for i in numbers) #列表生成式
numbers4=[str(i).zfill(3) for i in numbers]     #列表生成式
print(numbers3)
print(numbers4)

运行后>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
['01', '02', '03', '04', '05', '06', '07', '08', '09', '10']
['001', '002', '003', '004', '005', '006', '007', '008', '009', '010']

i for i in 列表 if

列表生成式:列表生成式后面可以跟if

numbers =list(range(1,11))
numbers5=[str(i).zfill(2) for i in numbers if i%2==0]  #列表生成式 只能跟if  不能跟else了
numbers6=[str(i).zfill(2) for i in numbers if i%2]     #列表生成式  和 非空即真
print(numbers5)
print(numbers6)

运行后>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
['02', '04', '06', '08', '10']
['01', '03', '05', '07', '09']

列表生成式:不能再跟else了,否则会报错,提示无效语句

numbers =list(range(1,11))
numbers6=[str(i).zfill(2) for i in numbers if i%2 else] #无效语句
print(numbers6)

运行后>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
    numbers6=[str(i).zfill(2) for i in numbers if i%2 else]
                                                         ^
SyntaxError: invalid syntax           #提示此处为无效语句

2、三元表达式

# 三元表达式
age=input("age:")
if not age.isdigit():
    print("年龄是整数")
else:
    age =int(age)
    
    msg="成年人" if age>=18 else "未成年人"    #三元表达式只能用 if  else
    print(msg)
    print("chengnianle" if age>=18 else "weichengnian")
    
    # if age>=18:
    #     print("成年人")
    # else:
    #     print("未成年人")
    
运行后>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
age:18
成年人
chengnianle

本文暂时没有评论,来添加一个吧(●'◡'●)

欢迎 发表评论:

最近发表
标签列表