首页 > 编程语言 >python中的公共操作和推导式

python中的公共操作和推导式

时间:2022-11-15 23:24:56浏览次数:47  
标签:推导 python list1 列表 range 公共 print data

# 1.公共操作
# del 删除 删除变量或指定容器内数据 变量,容器里面的值
# + 将两个相同类型序列进行连接 字符串,列表,元组
print('1.公共操作')
print('a' + 'b')
print(['a'] + ['b'])
print(('a',)+('b',))  # 元组,要有,
# print({1:2}+{2:3})  # 字典不行,报错

# * 复制 将里面的数据线进行复制 字符串,列表,元组
# 语法糖 带来便利的操作
print()
print('-'*50)
print([1, 2, 3]*3)
print((1, 2)*2)

# len 获取序列长度 字符串、列表、元组、字典、集合
print()
list1 = [1, 2, 3]
print(len(list1))
print(list1.__len__())
set1 = {1, 2, 2}  # 长度是2,因为去重
print(len(set1))

# reverse 倒置 将容器里面的数据倒置 字符串、列表、元组、字典
# 因为集合中的数据没有顺序
print()
list1 = [1, 2, 3]
for i in list1:
    print(i)  # 输出123
for i in reversed(list1):
    print(i)  # 输出321

# max、min 求容器数据的最大致最小值 字符串、列表、元组、字典、集合
print()
list1 = [1, 2, 3]
print(max(list1))
print(min(list1))
str1 = 'adcba'
print(max(str1))  # 根据ASCII输出

# sum 求将容器的数据求和 列表、元组、字典、集合
print()
list1 = [2, 3, 6]
print(sum(list1))
tuple1 = (2, 3, 6)
print(sum(tuple1))
set1 = {2, 3, 6}
print(sum(set1))

# enumerate 索引映射 将索引映射给容器里面的数据 列表、元组或字符串
print()
list1 = ['a', 'b', 'c']
for i in enumerate(list1):
    print(i)
for index, data in enumerate(list1):  # 默认start=0
    print(index, data)
for index, data in enumerate(list1, start=1):  # 索引从1开始
    print(index, data)  # 索引是1,2,3

# in  not in 是否存在 判断数据是否存在于容器内 字符串、列表、元组、字典、集合
print()
list1 = [1, 2, 3]
print(1 in list1)
print(1 not in list1)

 

# 2.容器类型的转换
# list tuple set
print()
print('2.容器类型的转换')
list1 = [1, 2, 3, 2]
tuple1 = (1, 2, 3, 2)
set1 = {1, 2, 3, 2}  # 转成集合会去重!
print(set1)  # 输出123 因为去重2
print(tuple(list1))
print(list(set1))  # 因为集合去重了2,只剩下了123

 

 

 

# 3.列表推导式

# # 普通写法
# list_data = []
# for i in range(10):
#     list_data.append(i)
# print(list_data)
# # 推导式写法
# # 代码简洁,运行速度变快
# # 可读性变差
# print([i for i in range(10)])

print()
print('3.列表推导式')
# 步骤:
# 主体:for循环
# 类型:[]  表示列表
# 返回的数据:i
print([i for i in range(10)])

 

 

 

# 4.列表推导式和if一起使用
print()
print('4.列表推导式和if一起使用')
# 普通写法
list_data = []
for i in range(10):
    if i % 2 == 0:  # 选择0-9中的偶数
        list_data.append(i)
print(list_data)
# 对应的推导式写法
print([i for i in range(10) if i % 2 == 0])

 

 

 

# 5.字典推导式
print()
print('5.字典推导式')
dict_data = {}
for i in range(10):
    dict_data[i] = i+1  # value是key加1
print(dict_data)
# 对应的字典推导式
# 主体:for循环
# 类型:{}  表示字典
# 返回的数据:i:i+1
print({i: i+1 for i in range(10)})

 

 

# 6.字典推导式和if一起使用
print()
print('6.字典推导式和if一起使用')
dict_data = {'小明': 58, '小芳': 80, '小刚': 99, '小雨': 46}
print({(i[0], i[1]) for i in dict_data.items() if i[1] < 60})  # 注意这里if后面不能有:
print([(i[0], i[1]) for i in dict_data.items() if i[1] < 60])  # 注意这里if后面不能有:

 

 

# 7.集合推导式
print()
print('7.集合推导式')
print({i for i in range(10)})
# 这里是i不是键值对
# 所以是集合不是字典

 

 

# 8.三元表达式
print()
print('8.三元表达式')

score = 40

if score > 60:
    print('合格')
else:
    print('不合格')

print('合格') if score > 60 else print('不合格')


score = 50
if score > 60:
    res = 'True'
else:
    res = 'False'
print(res)

res = 'True' if score > 60 else 'False'
print(res)

 

 

# 9.列表推导式和三元表达式一起
# 判断成绩是否合格
print()
print('9.列表推导式和三元表达式一起')
dict_data = {}
for i in range(58, 63):
    if i > 60:
        dict_data[i] = True
    else:
        dict_data[i] = False
print(dict_data)

print({i: True if i > 60 else False for i in range(58, 63)})

 

 

# 今日练习
# 请用列表推导式完成1到100所有奇数的和
print()
print('今日练习')
print(sum([i for i in range(1, 101) if i % 2 != 0]))

 

标签:推导,python,list1,列表,range,公共,print,data
From: https://www.cnblogs.com/qc2012/p/16894419.html

相关文章

  • python-if where for-函数
    一、if-where-for1、If:判断语句: if+条件:              elif+条件:              else:后面不能加条件实......
  • python 中 filter函数的用法
     和map()类似,filter()也接收一个函数和一个序列。和map()不同的时,filter()把传入的函数依次作用于每个元素,然后根据返回值是True还是False决定保留还是丢弃该元素。 ......
  • python 中内建函数map的用法
     map函数会根据提供的函数对指定序列做映射。通过定义可以看到,这个函数的第一个参数是一个函数,剩下的参数是一个或多个序列,返回值是一个集合。map的作用是以参数序列中......
  • python脚本check linux
    check脚本:importparamikoimportConfigParserimportsys#-*-coding:UTF-8-*-username="root"pwd="YDYP1F1@flzx3kc"host_ip=[]reload(sys)sys.setdefaulten......
  • Python读取写入txt内容
    Python读取、写入txt内容withopen("test.txt","r")asf:#打开文件data=f.read()#读取文件print(data)withopen("test.txt","w")asf:......
  • Python - 实现定时任务
    fromapscheduler.schedulers.blockingimportBlockingSchedulerfromdatetimeimportdatetimedeftest_tick():print(f'timeis{datetime.now()}')if__nam......
  • 数据结构之动态规划 斐波那契数列&最长公共子序列
    $fib()$递归$fib(n)=fib(n-1)+fib(n-2):{0,1,1,2,3,5,8,……}$复杂度计算$T(0)=T(1)=1;T(n)=T(n-1)+T(n-2)+1,n>1$令$S(n)=\frac{[T(n)+1]}{2}$//这是要去掉......
  • python使用os和socket模块简单进行远程命令执行
    一般来说,os模块自带os.system()和os.popen()两个方法用于命令执行,os.system()用来执行系统命令os.popen()可以理解为把命令执行结果变成文件并可供读写,我们主要使用popen(......
  • python os模块 高频函数(未完待续)
    os.environ>>>importos>>>os.environenviron({'CLUTTER_IM_MODULE':'fcitx','COLORTERM':'truecolor','DBUS_SESSION_BUS_ADDRESS':'unix:path=/run/user/1000/......
  • 07python列表
    这篇文章主要介绍列表的一些知识。函数list首先需要说明的是,列表与元组、字符串一样都是一种序列,但不同的是列表是可变的,即可修改其内容。因为不能像修改列表那样修改字......