a = "dfjhdjh"
b = ["dfsj","hfjs"]
c = 123.56
d = 123
print(id(a),id(b),id(c))
print(type(a),type(b),type(c))
print(hash(a),hash(c),hash(d))
print(float(d),int(c),set(b),list(a),tuple(b),bool(d))
print(bin(d),hex(d))
m = input()
print(m,hash(m))
========run_result==========
4312597680 4313075456 4312356080
<class 'str'> <class 'list'> <class 'float'>
-6399621406674454723 1291272085159673979 123
123.0 123 {'dfsj', 'hfjs'} ['d', 'f', 'j', 'h', 'd', 'j', 'h'] ('dfsj', 'hfjs') True
0b1111011 0x7b
isinstance(x, A_tuple),x指的是被判断的元素,A_tuple是被判断的类型,可以单输入某种类型,也可以是多种类型的集合issubclass(x, A_tuple)x指的是被判断的元素,A_tuple是被判断的类,可以单输入某种类的名称,也可以是多个类集合abs(x),x为数值,求某个数的绝对值max(x),min(x),返回可迭代对象/多个参数中的最大值或者最小值round(x) :四舍六入五取偶(五取偶的意思是:第一个小数是5时,个位数是偶数,直接舍弃,个位是奇数,个位数+1)pow(x):x的y次幂range(stop)返回从0开始到stop-1的可迭代对象;range(start,stop,[,step])返回从start开始,到stop-1结束,步长为step的可迭代对象;range不是迭代器,不能使用next函数sum(iterable),对可迭代对象的所有数值求和divmod(x,y):返回x//y(整除)和x%y(取余)的元组b = ["dfsj","hfjs"]
c = 123.56
d = [101,999,4,-12,1.5]
n = isinstance(b,(list,dict))
print(n)
print(max(d),min(d),round(c),round(d[4]),pow(d[0],d[2]),abs(d[3]))
print(divmod(d[0],d[2]))
#bool是int的子类
x = issubclass(bool,int)
print(x)
a = sum(range(1,101,2))
print(a)
k = [0,[1,5,6],2]
z = k[1:2]
print("切片取值,浅copy,嵌套列表的id一致:",id(k[1][0]),id(z[0][0]))
===========run_result========
True
999 -12 124 2 104060401 12
(25, 1)
True
2500
切片取值,浅copy,嵌套列表的id一致: 4313022704 4313022704
print(chr(97),chr(20013))
print(ord("a"),ord("A"),ord("国"))
=========run_result======
a 中
97 65 22269
sorted(iterable,reverse=True),iterable为可迭代的参数,enumerate(seq,start=0)d = [101,999,4,-12,1.5]
m = sorted(d)
n = sorted(d,reverse=True)
print(d,m,n)
k = reversed(d)
print(d,type(k))
print("next取值",next(k))
[print("迭代器",i) for i in k]
d.reverse()
print("反转:",d)
d.sort()
print("排序:",d)
z = enumerate(d,start=1)
print("next取值",next(z))
[print(k) for k in z ]
z = enumerate(d,start=0)
[print(k,v,sep="\t") for k,v in z ]
f = ["f","7",9,4,5]
it = iter(f)
print(type(it))
print(next(it))
===========run_result==========
[101, 999, 4, -12, 1.5] [-12, 1.5, 4, 101, 999] [999, 101, 4, 1.5, -12]
[101, 999, 4, -12, 1.5] <class 'list_reverseiterator'>
next取值 1.5
迭代器 -12
迭代器 4
迭代器 999
迭代器 101
反转: [1.5, -12, 4, 999, 101]
排序: [-12, 1.5, 4, 101, 999]
next取值 (1, -12)
(2, 1.5)
(3, 4)
(4, 101)
(5, 999)
0 -12
1 1.5
2 4
3 101
4 999
<class 'list_iterator'>
f
a =3 in [x for x in range(10)]
print(a)
#3匹配的是key,而不是value
b = 3 in {x:y for x,y in zip(range(4),range(4,10))}
print(b)
__iter__() 和 __next__().from collections import Iterable,Iterator,Generatorprint(list(zip(range(10),range(10,20),(1,2),{"name":"11","age":20})))
===========run_result=========
[(0, 10, 1, 'name'), (1, 11, 2, 'age')]
def filter_d(x):
if x > 10:
return False
else:
return True
list_l = [10,25,78,9,0]
res = filter(filter_d,list_l)
print("filter的返回值转换元组:",tuple(res))
*********************run_result***********************
filter的返回值转换元组: (25, 78)
接受两个参数,function_or_None和iterable
def filter_d(x):
if x > 10:
return "zq"
else:
return "error"
res_m = map(filter_d, list_l)
print("map的返回值转换元组:", tuple(res_m))
*********************run_result***********************
map的返回值转换元组: ('error', 'zq', 'zq', 'error', 'error')