abs绝对值
print(abs(-1)) #1
print(abs(1)) #1
#空,None,0的布尔值为False,其余都为True
print(bool('')) #False
print(bool(None)) #False
print(bool(0)) #False
name='你好'
print(name) #你好
print(bytes(name,encoding='utf-8')) #b'\xe4\xbd\xa0\xe5\xa5\xbd'
print(bytes(name,encoding='utf-8').decode('utf-8')) #你好
#
print(bytes(name,encoding='gbk')) #b'\xc4\xe3\xba\xc3'
print(bytes(name,encoding='gbk').decode('gbk')) #你好
#
print(bytes(name,encoding='ascii'))#ascii不能编码中文
print(chr(88)) #X
print(dir(dict)) #对象属性
print(divmod(10,3)) #(3, 1)
dic={'name':'alex'}
dic_str=str(dic)
print(dic_str) # {'name': 'alex'}
print(type(dic_str)) #<class 'str'>
#可hash的数据类型即不可变数据类型,不可hash的数据类型即可变数据类型
print(hash('12sdfdsaf3123123sdfasdfasdfasdfasdfasdfasdfasdfasfasfdasdf')) #-8325783092389037935
print(hash('12sdfdsaf31231asdfasdfsadfsadfasdfasdf23')) #-6478208158977356493
#
name='alex'
print(hash(name)) #-7553419422154337720
print(hash(name)) #-7553419422154337720
#
#
print('--->before',hash(name)) #--->before -7553419422154337720
name='sb'
print('=-=>after',hash(name)) #=-=>after 7890773354327040745
print(bin(10))#10进制->2进制 #0b1010
print(hex(12))#10进制->16进制 #0xc
print(oct(12))#10进制->8进制 #0o14
##min max
l=[1,3,100,-1,2]
print(max(l)) #100
print(min(l)) #1
print(list(zip(('a','n','c'),(1,2,3)))) #[('a', 1), ('n', 2), ('c', 3)]
print(list(zip(('a','n','c'),(1,2,3,4)))) #[('a', 1), ('n', 2), ('c', 3)]
print(list(zip(('a','n','c','d'),(1,2,3)))) #[('a', 1), ('n', 2), ('c', 3)]
p={'name':'alex','age':18,'gender':'none'}
print(list(zip(p.keys(),p.values()))) #[('name', 'alex'), ('age', 18), ('gender', 'none')]
print(list(p.keys())) #['name', 'age', 'gender']
print(list(p.values())) #['alex', 18, 'none']
print(list(zip(['a','b'],'12345'))) #[('a', '1'), ('b', '2')]
age_dic={'alex_age':18,'wupei_age':20,'zsc_age':100,'lhf_age':30}
print(max(age_dic.values()))
# #默认比较的是字典的key
print(max(age_dic))
#
for item in zip(age_dic.values(),age_dic.keys()): #[(18,'alex_age') (20,'wupeiqi_age') () () ()]
print(item) #(18, 'alex_age')
#(20, 'wupei_age')
#(100, 'zsc_age')
#(30, 'lhf_age')
#
print('=======>',list(max(zip(age_dic.values(),age_dic.keys())))) #=======> [100, 'zsc_age']
l=[
(5,'e'),
(1,'b'),
(3,'a'),
(4,'d'),
]
# l1=['a10','b12','c10',100] #不同类型之间不能进行比较
l1=['a10','a2','a10']
print(list(max(l))) #[5, 'e']
print('--->',list(max(l1))) #---> ['a', '2']
dic={'age1':18,'age2':10}
print(max(dic)) # age2 比较的是key
print(max(dic.values())) #18 比较的是key,但是不知道是那个key对应的
print(max(zip(dic.values(),dic.keys()))) #(18, 'age1') 结合zip使用
people=[
{'name':'alex','age':1000},
{'name':'wupei','age':10000},
{'name':'yuanhao','age':9000},
{'name':'linhaifeng','age':18},
]
# max(people,key=lambda dic:dic['age'])
print(max(people,key=lambda dic:dic['age'])) #{'name': 'wupei', 'age': 10000}
print(pow(3,3)) #27 3**3
print(pow(3,3,2)) #1 3**3%2
l='hello'
s1=slice(3,5)
s2=slice(1,4,2)
print(l[3:5]) #lo
print(l[s1]) #lo
print(s2.start) #1
print(s2.stop) #4
print(s2.step) #2
l=[3,2,1,5,7]
l1=[3,2,'a',1,5,7]
print(sorted(l))
# print(sorted(l1)) #排序本质就是在比较大小,不同类型之间不可以比较大小
people=[
{'name':'alex','age':1000},
{'name':'wupei','age':10000},
{'name':'yuanhao','age':9000},
{'name':'linhaifeng','age':18},
]
print(sorted(people,key=lambda dic:dic['age']))
#[{'name': 'linhaifeng', 'age': 18}, {'name': 'alex', 'age': 1000}, {'name': 'yuanhao', 'age': 9000}, {'name': 'wupei', 'age': 10000}]
name_dic={
'abyuanhao': 11900,
'alex':1200,
'wupei':300,
}
print(sorted(name_dic)) #['abyuanhao', 'alex', 'wupei']
#
print(sorted(name_dic,key=lambda key:name_dic[key])) #['wupei', 'alex', 'abyuanhao']
#
print(sorted(zip(name_dic.values(),name_dic.keys()))) #[(300, 'wupei'), (1200, 'alex'), (11900, 'abyuanhao')]
def test():
msg='撒旦法阿萨德防撒旦浪费艾丝凡阿斯蒂芬'
print(locals()) #函数会以字典类型返回当前位置的全部局部变量。{'msg': '撒旦法阿萨德防撒旦浪费艾丝凡阿斯蒂芬'}
print(vars()) #返回对象object的属性和属性值的字典对象。 {'msg': '撒旦法阿萨德防撒旦浪费艾丝凡阿斯蒂芬'}
test()
print(vars(int))
# import------>sys----->__import__()
# import test
# test.say_hi()
# import 'test'#报错
module_name='test'
m=__import__(module_name)
m.say_hi()
文件的读操作
# r+,可读写文件【可读;可写;可追加】-----一般使用这个模式
# w+,可写读文件【可写;可读;可追加】-----基本用不到
# a+,追加读写文件
# rb,以二进制的模式读取文件,不可以传encoding参数
# wb,以二进制编码的模式写文件
#r w a
f=open('1.py','r',encoding='utf-8') #读权限
data1=f.read() #读全部
print(f.readable()) #True
print('第1行',f.readline(),end='') #去除换行
print('第2行',f.readline())
data1=f.readlines() #读取一行
print(data1)
f.close()
f=open('陈粒1','w',encoding='utf8')
# f.read()
f.write('11111111\n')
f.write('222222222\n')
f.write('333\n4444\n555\n')
# f.writable()
f.writelines(['555\n','6666\n'])
f.writelines(['555\n','6666\n',1]) # 文件内容只能是字符串,只能写字符串
f.close()
f=open('陈粒1','a',encoding='utf-8')
f.write('写到文件最后')