python开发基础(三)python内置函数
# 内置函数 print(abs(-1)) # abs 绝对值 # 0, None, [''] 为False, 其余都为True print(all([1, 2, 3, '4'])) # all 序列全真,返回True print(any([1, 0])) # any 序列中只要有一个真,则返回True print(bool(None)) # bool 判断布尔值 # 编码: encoding , 解码: decode ,ASCII不能用于中文 name = '码农' print(bytes(name, encoding='utf-8')) print(bytes(name, encoding='utf-8').decode('utf-8')) print(bytes(name, encoding='gbk')) print(bytes(name, encoding='gbk').decode('gbk')) print(chr(97)) # chr 对应ASCII码表的十进制 只能传一个值 print(ord('a')) # ord 和chr相反 print(dict({'name': '小明'})) # dict 字典 print(dir(list)) # dir 查看 某一个对象对应的方法 print(divmod(10, 3)) # rdivmod() 求商取余 # 字典转字符串类型 dic = {'name': 'Jack'} dic_str = str(dic) print(type(dic_str), dic_str) # str 转为字符串类型, int 转为整型, tuple 转为元组, dict 转为字典, set 转为集合, 等 # eval 将字符串中的数据结构提出出来 print(type(eval(dic_str)), eval(dic_str)) # eval # eval 吧字符串的表达式做数据运算 var_1 = '1+2*(3/2-1)+10' print(var_1) print(eval(var_1)) # eval # hash 运算 ,可hash的数据类型即不可变数据类型,反之则为可变数据类型 # hash 固定值得位数 print(hash('小明')) name_1 = 'Jack' print(hash(name_1)) name_1 = 'hashJack' print(hash(name_1)) print(help(all)) print(help(dir(all))) # help 查看帮助 print(bin(2)) print(oct(8)) print(hex(16)) # 进制转换 print(isinstance(1, int)) print(isinstance('1', str)) print(isinstance((1, '2'), tuple)) print(isinstance([1, '2'], list)) print(isinstance({1, 2}, set)) print(isinstance({'one': '1'}, dict)) # isinstance 判断对应类型 print(globals()) # globals 查看全局变量 print('-' * 50) print(locals()) # locals 查看局部变量 num_list = [1, 2, 3, 10, 20, 30, 100, 200, 300] print(max(num_list)) # 取最大值 print(min(num_list)) # 取最小值 print(pow(10, 3)) # pow(n, x, y) 10**3 n的x次幂 print(pow(7, 5, 4)) # pwd 10**3%4 对n的x次幂除以y取余 print(list(reversed([1, 2, 3, 4]))) # reversed 翻转, 只做处理,不做存储 print(round(3.4)) # round 四舍五入 print(set('hello')) # set 转换成集合 print(sum(range(5))) # sum 做加法运算 print(type(1)) # type 查看数据类型 # slice 切片解码 test = 'hello' # print(test[3:5]) # 硬解码 sl = slice(3, 4) sli = slice(0, 4, 2) print(test[sl]) # slice 切片, 可以加步长 print(test[sli]) # 取0到3 ,步长为2 # zip函数 一一对应 # print(list(zip(('a', 'b', 'c'), (1, 2, 3)))) msg_dic = {'name': 'Jack', 'age': '18', 'hobby': 'player'} zip_mag_dic = zip(msg_dic.keys(), msg_dic.values()) # print(list(zip_mag_dic)) # print(list(msg_dic.keys())) # print(list(msg_dic.values())) # max, min 的高级用法 # people_manage = [ # {'name': 'Jack', 'age': '18'}, # {'name': 'alex', 'age': '20'}, # {'name': 'seven', 'age': '22'} # ] # # for i in people_manage: # if people_manage['age'] >= 20: # print(i) age_dic = {'age1': 18, 'age2': 20, 'age3': 25} print(max(age_dic.values())) print(max(age_dic)) # 默认取字典的keys ,按照ASCII表得值作比较,一位一位比较 zip_age_dic = zip(age_dic.values(), age_dic.keys()) for i in zip_age_dic: print(i) print(list(max(zip(age_dic.values(), age_dic.keys())))) # 比较序列不能和不同数据类型做比较 people_manage = [ {'name': 'Jack', 'age': '18'}, {'name': 'alex', 'age': '20'}, {'name': 'seven', 'age': '22'} ] manage_age = max(people_manage, key=lambda dic: dic['age']) print(manage_age) # people_manage_age_list = [] # for i in people_manage: # people_manage_age_list.append(i['age']) # print(people_manage_age_list) # sorted 排序, 由小到大 age_1 = [2, 123, 14, 44, 3, 5, 1, 23, 4, 235, 6, 23] # age_2 = [12, 2, 4, 56, 4, 2, '12', 'as'] # 不同类型不能排序 print(sorted(age_1)) people_manage = [ {'name': 'jack', 'age': '18'}, {'name': 'alex', 'age': '20'}, {'name': 'seven', 'age': '22'} ] print(sorted(people_manage, key=lambda x: x['age'])) people_age = { 'alex': 22, 'jack': 18, 'seven': 35 } print(sorted(people_age, key=lambda key: people_age[key])) print(sorted(zip(people_age.values(), people_age.keys()))) # people_age, key=lambda key: people_age[key], # import myprot # import 不能导入字符串 # # myprot.hello() # module_name = 'myprot' # m = __import__(module_name) # __import__ 导入带有字符串的包 # m.hello()
本文来自博客园,作者:关于段主任的一切,转载请注明原文链接:https://www.cnblogs.com/fairylandfuture/p/14663955.html