python(五)模块
列表生成式
需求:要产生1-10的随机数字,不足两位的前面补0,注意01,02,03......前面补了0就不是int类型所以要转换为字符串,1,2,3.....这样的才属于int类型
正常的写法:
SRE实战 互联网时代守护先锋,助力企业售后服务体系运筹帷幄!一键直达领取阿里云限量特价优惠。f = [ ]
for i in range(1,11):
f.append(str(i).zfill(2))#因为要产生两个数字,不足补0,01,02不是int类型是字符串
print(f)
打印结果:
['01', '02', '03', '04', '05', '06', '07', '08', '09', '10']
列表生成式的写法:
f1 =[str(i).zfill(2) for i in range(1,11)]
print(f1)
打印结果:
['01', '02', '03', '04', '05', '06', '07', '08', '09', '10']
用列表生成式写出创建10个文件及10个文件夹:
#创建10个txt文件
f1 =[open('%s.txt'%i,'w') for i in range(10)]
#创建10个文件夹
import os
f2= [os.mkdir(str(i)) for i in range(10)]#文件夹名字类型不能是数字需先转为字符串
三元表达式
三元表达式的写法:
sex_tag = 0
if sex_tag == 0:
sex='女'
else:
sex='男'
#上面的判断写成三元表达式:
sex ='女' if sex_tag == 0 else sex='男' #if满足取前面否则取后面
排序写法:
#升序的排列
s='1283225'
f=['42','2','1']
print(sorted(f))
print(sorted(s))
打印结果:
['1', '2', '42']
['1', '2', '2', '2', '3', '5', '8']
#降序排列
s='1283225'
f=['42','2','1']
print(sorted(f,reverse=True))
print(sorted(s,reverse=True))
打印结果:
['42', '2', '1']
['8', '5', '3', '2', '2', '2', '1']
python的内置函数补充
map,filter这两个函数的作用是:循环调用函数

更多精彩