21,074
社区成员
发帖
与我相关
我的任务
分享
# li = []
# for i in range(1, 11): # 拿到偶数 2 4 6 8 10
# if i % 2 == 0:
# li.append(i)
# print(li)
#
# new_li = [i for i in range(1, 11) if i % 2 == 0] # 对于简单我们可以使用列表推导式
# # 对于复杂的 我们在读代码时候并不能直接明白代码的意思
# print(new_li)
#
# dic = {i: i ** 2 for i in range(1, 6)}
# print(dic)
#
list1 = ['name', 'age', 'sex']
list2 = ['Tom', 20, '男']
dict1 = {list1[i]: list2[i] for i in range(len(list1))} # i对应的值为 0 1 2 作为下标去取值
print(dict1)
list1 = ['name', 'age', 'sex']
list2 = ['Tom', 20, '男']
# 通过循环 list1中的每一个值 作为键 list2的每一个值 作为值 前提是我要有一个空的字典
"""
dic ={}
list1[0]: list2[0]
{'name': 'Tom', 'age': 20, 'sex': '男'}
dic[list1[0]] = list2[0] # 向字典中添加值
"""
computs = {'AUC': 268, 'HP': 125, 'DELL': 201, 'Lenovo': 199, 'acer': 99}
# 需求:提取上述电脑数量⼤于等于200的字典数据
count1 = {key: value for key, value in computs.items() if value >= 200}
print(count1) # {'MBP': 268, 'DELL': 201}
result = {k: v for k, v in computs.items() if v >= 200}
"""代码是有逻辑性的 不是从头写到尾"""
# li = {i ** 2 for i in range(1, 4)}
# print(li)
#
# a = {x for x in 'abracadabra' if x not in 'abc'} # 自动去重
# print(a)
a = (x for x in range(1,10))
print(a)
# 返回的是生成器对象
# <generator object <genexpr> at 0x7faf6ee20a50>
# 使用 tuple() 函数,可以直接将生成器对象转换成元组
print(tuple(a))
# (1, 2, 3, 4, 5, 6, 7, 8, 9)
print(tuple((x for x in range(1,10))))
# (1, 2, 3, 4, 5, 6, 7, 8, 9)