Python基本语法之列表生成器

under Python  tag     Published on February 5th , 2020 at 01:00 am

列表生成式介绍

列表生成式(List Comprehensions),可以生成list列表的表达式,是Python内置的一种强大的功能。

基本语法

语法1:[表达式 for 变量 in 列表]

表示把得到的每一个变量值都放到 for 前面的表达式中计算 ,然后生成一个列表

语法2:[表达式 for 变量 in 列表 if 条件]

如果加上 if 判断,则表示把每一个变量值进行判断,如果判断正确再交给表达式进行计算,然后生成一个列表

举例:生成一个列表 内容从1-20

  • 不使用列表生成式
List1 = []

for i in range(1,21):
    List1.append(i)
    
print(List1)

使用for循环与range()函数完成

  • 使用列表生成式
List2 = [i for i in range(1, 21)]
print(List2)

举例:给定一个列表,把其中字母都变成大写

  • 不使用列表生成器
# 先给定需要转换的列表
list1 = [123, 778, 'aptc', 'af', '嘿嘿']
# 储存转换后元素的列表
list2 = []
#将小写字符转换成大写字符
for i in list1:
    if isinstance(i, str):
        list2.append(i.upper())
    else:
        list2.append(i)
print(list2)
  • 使用列表生成式
List1 = ['abc', 'def', 'ghj', 123, '嘿嘿']
# 转换后储存在列表List2
List2 = [i.upper() for i in List1 if isinstance(i, str)]
print(List2)

本文由simyng创作, 采用知识共享署名4.0 国际许可协议进行许可,转载前请务必署名
  文章最后更新时间为:February 4th , 2020 at 05:00 pm