abs()绝对值函数
print(abs(-0.12))
round()对浮点数近似取值,保留几位小数
print(round(2.645,2)) #保留两位小数
pow()求幂运算
print(pow(3,3)) #前面底数,后面次方
max()求最大值
print(max([23,145,4564,1,12345]))
sum()求和
print(sum([12,546,47842,12]))
eval()动态执行表达式
a,b,c = 1,2,3 print(eval('a+b+c')) def TestFun(): print('我执行了吗?') pass eval('TestFun()') #函数的调用类型转换
十进制转换二进制
print(bin(10))
十进制转换十六进制
print(hex(100))
元组转换为列表
tup = (1,2,3,4) print(type(tup)) li = list(tup) li.append('强制转换成功') print(li) print(type(li))
列表转换为元组
tupList = tuple(li) print(type(tupList))
*** 作字典 dict()
dic = dict(name = '小明',age = '18') #创建字典 print(type(dic)) print(dic)
转换字节数组
print(bytes('我喜欢python',encoding = 'utf-8'))序列 *** 作
all()用于判定参数是否都为true是就返回true不是返回false
除了0,空,false以外都为true
空元组,空列表返回true
print(all([])) print(all(())) print(all([1, 2, 4, False])) print(all([1, 2, 4])) print(all([1, 2, 4, 0]))
any()类似于逻辑运算符,or只要有一个元素为True,结果就为True
print(any((3, 4, 0)))
sorted()对所有可迭代的对象进行排序 *** 作
li = [2, 45, 132, 41, 31, 15] li.sort() # list的排序方法,直接修改的原始对象 print('------------排序之前------------{}'.format(li)) # 默认升序排列 varList = sorted(li) print('------------排序之后------------{}'.format(varList)) varList1 = sorted(li, reverse=True) # 降序排列 print('------------排序之后------------{}'.format(varList1)) tupArray = (1, 54, 456, 12, 456) varRs = sorted(tupArray, reverse=False) # true为降序,false为升序 print(varRs)
range()创建一个整数列表,一般用于for循环中
zip()用来打包
s1 = ['a', 'b', 'c'] s2 = ['你', '我', '他'] s3 = ['是', '儿', '爹', '哈哈', '111'] zipList = zip(s1, s2) zipList1 = zip(s2, s3) print(list(zipList)) # 打包 print(list(zipList1)) #多余的不在打包
def printBookInfo(): books = [] #存储所有图书信息 id = input ('请输入编号:每个项以空格分割') #str bookName = input('请输入书名:每个项以空格分割') #str bookPos = input('请输入位置:每个项以空格分割') #str idList = id.split(' ') nameList = id.split(' ') posList = id.split(' ') bookInfo = zip(idList, nameList, posList) #进行打包处理 for bookItem in bookInfo: ''' 遍历图书信息进行存储 ''' dictInfo = {'编号':bookItem[0], '书名':bookItem[1], '位置':bookItem[2]} books.append(dictInfo) #将字典对象添加到list容器中 pass for item in books: print(item) printBookInfo()
enumerate()用于可遍历数据对象,组成一个索引序列,同时列出数据和下标
listObj = ['a', 'b', 'c'] for item in enumerate(listObj): print(item) print(type(item)) pass dictObj = {} dictObj['name'] = '小明' dictObj['hobby'] = '唱歌' dictObj['age'] = '17' print(dictObj) for item in enumerate(dictObj): print(item)set集合
set不支持索引和切片,是一个无序的且不重复的容器
类似于字典,但只有key没有value
创建集合
set1 = {1, 2, 3} set2 = {2, 3, 4} print(type(set1))
添加 *** 作
set1 = {1, 2, 3} set2 = {2, 3, 4} set1.add('python') print(set1)
清空 *** 作
set1 = {1, 2, 3} set2 = {2, 3, 4} set1.clear() print(set1)
取差集 *** 作
set1 = {1, 2, 3} set2 = {2, 3, 4} rs3 = set1.difference(set2) print(rs3)
取交集 *** 作
set1 = {1, 2, 3} set2 = {2, 3, 4} rs4 = set1.intersection(set2) print(rs4)
并集 *** 作
set1 = {1, 2, 3} set2 = {2, 3, 4} rs5 = set1.union(set2) print(rs5)
提取数据 *** 作
set1 = {1, 2, 3} set2 = {2, 3, 4} rs6 = set1.pop() print(set1) print(rs6)
移除指定数据
set1 = {1, 2, 3} set2 = {2, 3, 4} set1.discard(3) print(set1)
更新 *** 作
set1 = {1, 2, 3} set2 = {2, 3, 4} rs7 = set1.update(set2) print(set1)小结
数学运算
abs() round() pow() divmod() max() min() sum() eval()
类型转换
int() float() str() ord() chr() bool() bin() hex() cot() list() tuple() dict() bytes()
序列 *** 作
all() any() sorted() reverse() range() zip() enumerate()
集合
add() clear() difference() intersection() union() pop() descard() update()练习
求三组连续自然数的和:1—10 20—30 35—45的和
def sumRange(m,n): ''' 求m到n(包含n)连续自然数的总和 :param m: 开始值 int :param n: 结束值 int :return: ''' return sum(range(m,n+1)) pass print(sumRange(1, 10)) print(sumRange(20, 30)) print(sumRange(35, 45))
100个和尚吃100个馒头,大和尚一人吃3个,小和尚三人吃一个馒头,大小和尚各多少人?
def PersonCount(): ''' 计算各有多少人 假设大和尚a 小和尚100-a人 :return: ''' for a in range(1,100): if a*3+(100-a)*(1/3)==100: # 100个和尚吃100个馒头 return(a,100-a) pass rsObj = PersonCount() print('大和尚{}人 小和尚{}人'.format(rsObj[0],rsObj[1]))
指定一个列表,列表中有唯一一个只出现过一次的数字,找到这个数字
li = [1, 3, 4, 3, 4, 5, 4, 8, 56, 455, 1, 5, 56, 455] set1 = set(li) # 去重 print(set1) for i in set1: li.remove(i) pass set2 = set(li) # set2中是原来li中有重复的数字 for i in set1: #判断set1中数据全部去重后形成的集合 if i not in set2: print(i) pass pass
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)