任何一门编程语言的核心操作都是操作内存中的数据,但内存中的数据又是通过编程语言的API来实现,所谓的API,就是系统提供给我们的函数,有一种函数是系统预先定义的函数,也就是我们安装python就自带的函数,这种我们把它称为内置函数,也叫内嵌函数
python官网给出了68个内置函数,以及相应的使用介绍。
注意:这里不完全是按照四舍五入或者四舍六入五成双来进行取值的,取值和python的版本有关,还和浮点数的精度有关。
print(pow(2,3)) # 2**3,2的3次方 print(2**3) print(pow(2,3,2)) # (2**3)%2 取余 print(pow(2,3,3)) print(pow(2,3,5))
divmod(a,b)==>元组(a//b,a%b)
a,b,c=1,2,3 print(eval(‘a*b+c-a‘)) print(eval(‘a*b+c-a‘,{‘a‘:10,‘b‘:2,‘c‘:3})) # 变量更改时候必须是字典对象,且不变的变量也得写进去 def testfun(): print(‘我执行了吗?‘) pass eval(‘testfun()‘) # 调用函数的字符串格式并执行函数
描述: chr() 用一个范围在 range(256)内的(就是0~255)整数作参数,返回一个对应的字符
语法: chr(i)
参数: i – 可以是10进制也可以是16进制的形式的数字
返回值:返回值是当前整数对应的Ascii字符
描述: bool() 函数用于将给定参数转换为布尔类型,如果没有参数,返回 False
语法: class bool([x])
参数: x – 要进行转换的参数
**返回值:**返回 Ture 或 False
下列对象都相当于False:[],(),{},0, None, 0.0, ‘‘
any() 函数用于判断给定的可迭代参数 iterable 是否全部为 False,则返回 False,如果有一个为 True,则返回 True。元素除了是 0、空、FALSE 外都算 TRUE
sort函数定义:sort(cmp=None, key=None, reverse=False)
cmp:用于比较的函数(大于时返回1,小于时返回-1,等于时返回0),比较什么由key决定,有默认值,迭代集合中的一项;
key:用列表元素的某个属性和函数进行作为关键字,有默认值,迭代集合中的一项;
reverse:排序规则. reverse = True 或者 reverse = False,有默认值。
key负责指定排序的比较顺序,reverse=True表示按照升序,False表示按照降序
zip() 函数用于将可迭代的对象作为参数,将对象中对应的元素打包成一个个元组,然后返回由这些元组组成的列表。如果各个迭代器的元素个数不一致,则返回列表长度与最短的对象相同,利用 *
号操作符,可以将元组解压为列表
z=zip([1,2,3],[‘a‘,‘b‘,‘c‘]) print(z) print(list(z)) z=zip([1,2,3],[‘a‘,‘b‘,‘c‘,‘d‘],[2,‘huber‘]) print(z) print(list(z)) s1=[1,2,‘hubert‘] print(s1) print(zip(s1)) print(list(zip(s1)))
练习
def printBookInfo(): books=[] # 存储所有图书的信息 id=input(‘请输入编号:每个项以空格分隔‘ ) #str bookName=input(‘请输入书名:每个项以空格分隔‘) # str bookpos = input(‘请输入位置:每个项以空格分隔‘) # str idList=id.split(‘ ‘) nameList=bookName.split(‘ ‘) posList=bookpos.split(‘ ‘) # print(idList) # [‘1‘, ‘2‘, ‘3‘]把输入的变成列表输出 bookInfo=zip(idList,nameList,posList) # 打包处理 # print(list(bookInfo)) #[(‘1‘, ‘ww‘, ‘ff‘), (‘2‘, ‘ee‘, ‘ggh‘), (‘3‘, ‘rr‘, ‘hh‘)] for bookItem in bookInfo: ‘‘‘ 遍历图书信息进行存储 ‘‘‘ dictInfo={‘编号‘:bookItem[0],‘书名‘:bookItem[1],‘位置‘:bookItem[2]} books.append(dictInfo) # 将字典对象添加到list容器中 pass # print(books) # [{‘编号‘: ‘1‘, ‘书名‘: ‘hh‘, ‘位置‘: ‘c1‘}, {‘编号‘: ‘2‘, ‘书名‘: ‘ss‘, ‘位置‘: ‘c2‘}, {‘编号‘: ‘4‘, ‘书名‘: ‘ee‘, ‘位置‘: ‘c3‘}] for i in books: print(i) printBookInfo()
函数用于将一个可遍历的数据对象(如列表、元组或字符串,集合)组合为一个索引序列,同时列出数据和数据下标,一般用在 for 循环当中。
listobj=[‘q‘,‘c‘,‘b‘] for i in enumerate(listobj): print(i) pass for index,i in enumerate(listobj): print(index) print(i) print(index,i) pass for index,i in enumerate(listobj,5): print(index,i)
set(集合) 也是python中的一种数据类型,是一个无序且不重复的元素集合。类似于字典,但是只有Key没有value。
# 创建集合 set1={1,2,‘a‘} print(set1) print(type(set1)) set1.add(‘python‘) # 添加操作 print(set1) set1.clear() #清空操作(也适用于其他字符串,元组,列表,字典) print(set1) # 两个集合的差集,a中存在,b中不存在 a={32,12,34,‘cc‘,‘vv‘} b={12,43,23,‘vv‘} print(a.difference(b)) print(a-b) # intersection()两个集合的交集,a中存在,b中也存在的 print(a.intersection(b)) print(a&b) # union 并集 包含a中的元素,也包含b中的元素 print(a.union(b)) print(a|b) # pop 集合pop随机移除某个元素并且获取那个参数(元素),集合pop没有参数 print(a) print(a.pop()) print(a) # discard 移除指定元素 a.discard(‘cc‘) print(a) # update 更新集合,在原来的基础上更新 print(b) a.update(b) print(a)
def sumRange(m,n): ‘‘‘ 求从m到n的连续自然数的总和 :param m:int :param n:int :return: ‘‘‘ return sum(range(m,n+1)) print(sumRange(1,10)) print(sumRange(20,30)) print(sumRange(35,45))
def personCount(): ‘‘‘ 计算各有多少个和尚 大和尚a 小和尚100-a :return: ‘‘‘ for a in range(1,35): if a*3+(100-a)*(1/3)==100: return (a,100-a) pass pass rsobj=personCount() print(‘大和尚{}人,小和尚{}人‘.format(rsobj[0],rsobj[1]))
#做法一:傻瓜式 lt=input(‘请输入一组数字列表,用空格隔开‘) listnum=lt.split(‘ ‘) flag=0 listnum1=sorted(listnum) s=listnum1[0] for item in listnum1: if item==s: flag+=1 continue pass else: if flag==1: print(s) break pass s=item flag=1 pass pass else: print(listnum1[len(listnum1)-1]) #做法二:set lt=input(‘请输入一组数字列表,用空格隔开‘) listnum=lt.split(‘ ‘) set1=set(listnum) for i in set1: listnum.remove(i) pass set2=set(listnum) print(set1-set2) #做法三:位运算异或,相同值异或为0,但是只适用于重复次数为偶数次 lt=input(‘请输入一组数字列表,用空格隔开‘) listnum=lt.split(‘ ‘) ans=0 for i in listnum: ans^=int(i) pass print(ans)
原文:https://www.cnblogs.com/giaogiaogiao/p/14488582.html