Python推导式:小练习

简介: Python推导式:小练习

1、打印30以内能被3整除的数,放到一个列表里

result = [i for i in range(30) if i%3 == 0] #i%3能被3整除的

#第一个i是输出, 第二个是取值范围 result是列表

print(result)

2、打印30以内能被3整除的平方

print([i*i for i in range(30) if i%3 == 0])

#如果不是需要所有的数,就不需要if判断


打印列表中被3整除的数的平方:

lst = [2.43, 6.666,9,2.2324]

print([i*i for i in lst if i%3 == 0])

3、 列表里的浮点数保留两位小数。整数保留原样

lst = [2.43, 6.666,9,2.2324]
test_one = [round(i,2) for i in lst]
print("保留小数点后两位:",test_one)


4、获取lst2里的奇数

lst2 = [[1,2,3],[4,5,6]]
li = []
for lst in lst2:
    for i in lst:
        if i%2:
            li.append(i)
print(li)


方法二: 嵌套推导式:

print([i for lst in lst2 for i in lst if i%2])

5、集合推导式:自动去重

str1 = "asdoferrenwwde"
print(set(str1))
print({i for i in str1})#{}集合推导式


6、字典推导式

str1 = "seeeeeeeeeeeeeeeeedfffsdv"
result = ({i:str1.count(i) for i in str1})
#i:key 、str1.count(i):value
#items()代表取到字典的key和value值,j:i表示key和value值换位置
print({j:i for i,j in result.items()})
q1 = ['a','ab','abc','abcd','abcde']
print({i.upper() for i in q1 if len(i)>=3})
x = [i for i in range(0,5) if i%2==0]
y = [i for i in range(0,5) if i%2]
result = [(i,j)for i in x for j in y]
print(result)
q3 = {'a':10,'b':34}
print({j:i for i,j in q3.items()})
q4 = {'B':3,'a':1,'b':6,'c':3,'A':4}
print({i.lower():q4.get(i.lower(),0) + q4.get(i.upper(),0) for i,j in q4.items()})


相关文章
|
5天前
|
Python
Python 练习实例35
Python 练习实例35
|
5天前
|
Python
Python 练习实例34
Python 练习实例34
|
5天前
|
Python
Python 练习实例36
Python 练习实例36
|
6天前
|
Python
Python 练习实例33
Python 练习实例33
|
4天前
|
开发者 Python
震撼!深入理解Python数据类型后,我才明白为什么大神都用列表推导式
【7月更文挑战第2天】Python列表推导式是编程效率提升的秘密武器。它以简洁的一行代码替代循环和条件判断,创建新列表。不仅代码量减少、执行效率高,还提升了可读性和可维护性。列表推导式允许抽象复杂逻辑,支持嵌套,使问题解决更专注。掌握这一特性,让你的Python代码更“Pythonic”,向大神级别迈进!**
|
4天前
|
大数据 程序员 Python
Python数据类型大变身!掌握列表推导式与生成器,编程效率翻倍不是梦
【7月更文挑战第2天】在Python中,列表推导式和生成器是提升效率的利器。列表推导式以简洁方式处理循环和条件,如将偶数平方化简为一行代码,提高代码可读性。生成器则按需生成数据,减少内存占用,适合处理大数据。通过`yield`函数实现惰性求值,有效避免内存溢出。掌握这两者,能优化Python编程体验。
|
4天前
|
C++ Python
揭秘!Python高手都在用的数据类型秘籍,列表推导式让你告别繁琐循环
【7月更文挑战第2天】Python的列表推导式是高手必备技巧,它让复杂的循环简化为一行代码,提升代码的可读性和效率。例如,要计算数字列表的平方,传统循环需使用`for`和`append()`,而列表推导式只需`[number ** 2 for number in numbers]`。此外,它还能结合条件表达式,如筛选并平方偶数:`[number ** 2 for number in numbers if number % 2 == 0]`。学会列表推导式,让你的Python代码更优雅、更易维护。
|
4天前
|
存储 程序员 Python
惊!Python数据类型竟藏着这些黑科技?列表推导式让你代码秒变炫酷!
【7月更文挑战第2天】Python的列表推导式是编程中的亮点,它以一行代码实现循环与条件判断,创建新列表。例如,要计算数字列表的平方,传统方法需循环,而列表推导式只需`[number ** 2 for number in numbers]`。它还能结合if语句筛选元素,如取偶数平方。嵌套使用时,能处理复杂数据结构,如展平并筛选偶数。列表推导式是Pythonic的体现,提升效率,简化代码。