标签:ati load for 并集 nbsp 好的 txt opera assert
map(function, iterable)
#例如
def square(x):
return x*x
print (map(square, [1,2,3,4,5]))
print (list(map(square, [1,2,3,4,5])))
<map object at 0x000002085A3F4BE0>
[1, 4, 9, 16, 25]
random.uniform()
uniform(x,y): 随机产生一个在[x, y]范围内的实数,返回一个浮点数。
random.shuffle和random.permutatin
shuffle直接在原数组上执行,而permutation不改变原来的数组,返回一个新的数组
dict.get(key, default=None) key :字典中要查找的键。 default:如果指定键的值不存在时,返回该默认值。
operator.itemgetter(n)定义了一个用来获取对象第n个域数据的函数。
import operator
a = [1,2,3,4,5,6,7]
func = operator.itemgetter(2)
print func(a)
3
对list、iterable进行排列
sorted(iterable, cmp, key, reverse)
iterable指定要排序的list或者iterable,
cmp为函数,指定排序时进行比较的函数,可以指定一个函数或者lambda函数,
key为函数,指定取待排序元素的哪一个域进行排序,
reverse默认为false(升序排列),定义为True时将按降序排列。
a = {‘d‘:4, ‘c‘:3, ‘f‘:5}
sorted(a.items(),key=operator.itemgetter(1), reverse=False)
a=[1,3,5]
b=[1,2,3]
并集:
c=set(a) | set(b)
#或者set(a).union(set(b))
print (c)
交集:
c=set(a) & set(b)
print (c)
差集:
c=set(a)-set(b)
print (c)
对称差集,返回两个集合中不重复的元素:
c=set(a) ^ set(b)
print(c)
num=14
#%d打印时结果是14
print "num=%d" % num # output: num=14
#%1d意思是打印结果为1位整数,当整数的位数超过1位时,按整数原值打印,所以%1d的打印结果还是14
print "num=%1d" % num # output: num=14
#%3d意思是打印结果为3位整数,当整数的位数不够3位时,在整数左侧补空格,所以%3d的打印结果是 14
print "num=%3d" % num # output: num= 14
#%-3d意思是打印结果为3位整数,当整数的位数不够3位时,在整数右侧补空格,所以%3d的打印结果是14_
print "num=%-3d" % num # output: num=14_
#%05d意思是打印结果为5位整数,当整数的位数不够5位时,在整数左侧补0,所以%05d的打印结果是00014
print "num=%05d" % num # output: num=00014
#%.3d小数点后面的3意思是打印结果为3位整数,
#当整数的位数不够3位时,在整数左侧补0,所以%.3d的打印结果是014
print "num=%.3d" % num # output: num=014
#%.0003d小数点后面的0003和3一样,都表示3,意思是打印结果为3位整数,
#当整数的位数不够3位时,在整数左侧补0,所以%.3d的打印结果还是014
print "num=%.0003d" % num # output: num=014
#%5.3d是两种补齐方式的综合,当整数的位数不够3时,先在左侧补0,还是不够5位时,再在左侧补空格,
#规则就是补0优先,最终的长度选数值较大的那个,所以%5.3d的打印结果还是 014
print "num=%5.3d" % num # output: num= 014
#%05.3d是两种补齐方式的综合,当整数的位数不够3时,先在左侧补0,还是不够5位时,
#由于是05,再在左侧补0,最终的长度选数值较大的那个,所以%05.3d的打印结果还是00014
print "num=%05.3d" % num # output: num=00014
#还可以用%*.*d来表示精度,两个*的值分别在后面小括号的前两位数值指定
#如下,不过这种方式04就失去补0的功能,只能补空格,只有小数点后面的3才能补0
print "num=%*.*d" % (04,3,num) # output: num= 014
import math
#%a.bf,a表示浮点数的打印长度,b表示浮点数小数点后面的精度
#只是%f时表示原值,默认是小数点后5位数
print "PI=%f" % math.pi # output: PI=3.141593
#只是%9f时,表示打印长度9位数,小数点也占一位,不够左侧补空格
print "PI=%9f" % math.pi # output: PI=_3.141593
#只有.没有后面的数字时,表示去掉小数输出整数,03表示不够3位数左侧补0
print "PI=%03.f" % math.pi # output: PI=003
#%6.3f表示小数点后面精确到3位,总长度6位数,包括小数点,不够左侧补空格
print "PI=%6.3f" % math.pi # output: PI=_3.142
#%-6.3f表示小数点后面精确到3位,总长度6位数,包括小数点,不够右侧补空格
print "PI=%-6.3f" % math.pi # output: PI=3.142_
#还可以用%*.*f来表示精度,两个*的值分别在后面小括号的前两位数值指定
#如下,不过这种方式06就失去补0的功能,只能补空格
print "PI=%*.*f" % (06,3,math.pi) # output: PI=_3.142
assert的异常参数,其实就是在断言表达式后添加字符串信息,用来解释断言并更好的知道是哪里出了问题。格式如下:
assert expression [, arguments]
assert 表达式 [, 参数]
lists=[1,2,3]
assert len(lists) >=5,‘列表元素个数小于5‘
assertionerror: 列表元素个数小于5
获取指定文件夹下所有匹配的文件
glob.glob(r‘c:\*.txt‘)
我这里就是获得C盘下的所有txt文件
seasons = [‘Spring‘, ‘Summer‘, ‘Fall‘, ‘Winter‘]
list(enumerate(seasons, start=2)) # 小标从 2 开始
[(2, ‘Spring‘), (3, ‘Summer‘), (4, ‘Fall‘), (5, ‘Winter‘)]
对于open()函数,其中文件打开方式参数有w,r,a
"r",以只读模式打开,你只能读取文件但不能编辑/删除文件的任何内容
"a",以追加模式打开,写入到文件中的任何数据将自动添加到末尾
"w",以写入模式打开,如果文件存在将会删除里面的所有内容,然后打开这个文件进行写入
Json模块提供了四个功能:dumps、dump、loads、load
pickle模块提供了四个功能:dumps、dump、loads、load
json dumps把数据类型转换成字符串
dump把数据类型转换成字符串并存储在文件中
loads把字符串转换成数据类型
load把文件打开从字符串转换成数据类型
json是可以在不同语言之间交换数据的,而pickle只在python之间使用。
json只能序列化最基本的数据类型,josn只能把常用的数据类型序列化(列表、字典、列表、字符串、数字、),比如日期格式、类对象!josn就不行了。
而pickle可以序列化所有的数据类型,包括类,函数都可以序列化。
使用pickle序列化后的文件打开是看不懂的,要想可以看懂,可以使用Json序列化
标签:ati load for 并集 nbsp 好的 txt opera assert
原文地址:https://www.cnblogs.com/yongfuxue/p/9988479.html