200字范文,内容丰富有趣,生活中的好帮手!
200字范文 > python多重赋值技巧_python教程12课:多元赋值 多重赋值 运算符以及判断字符串类型...

python多重赋值技巧_python教程12课:多元赋值 多重赋值 运算符以及判断字符串类型...

时间:2020-06-26 03:47:58

相关推荐

python多重赋值技巧_python教程12课:多元赋值 多重赋值 运算符以及判断字符串类型...

# 多元赋值:

# x,y,z 和 1,2,‘String'是两个元组,只不过元组的 () 被省略掉了

x, y ,z = 1, 2, 'String'

print(x, y, z)

(x, y ,z) = (3, 4, 'String')

print(x,y,z)

# 一般用在交换变量值

#交换变量值常规思路

x =10,

y =20

z =30

x ,y, z = y,z,x

print(x,y,z)

#使用多元赋值直接交换

x,y = y,x

print(x,y)

# 不能使用一个数值型

# x,y,z = 10

# 多元赋值的时候,元素个数要对应,不能多也不能

x,y,z = 'aaa','bbb','ccc'

print(x, y ,z)

################## 如果后面值是字符串,会自动转换成元组,字符串的长度需要和前面变量的个数一样

x,y,z = 'Str'

print(x,y,z)

# 等效于上面直接使用字符串

str = 'str'

tup = tuple(str)

print(tup)

x,y,z = tup

print(x,y,z)

##########################################使用字典

x,y,z = {'a':'aa','b':'bb','c':'cc'}

print('使用字典直接赋值',x,y,z)

# 等效于上面直接使用字典赋值

dict = {'a':'aa','b':'bb','c':'cc'}

tup = tuple(dict)

print('将字典转换之后的元组:',tup)

x,y,z = tup

print('使用字典转换后赋值:',x,y,z)

########################################使用 集合list

x,y,z = [1,2,3]

print('使用集合直接赋值:',x,y,z)

list = [1,2,3]

tup = tuple(list)

print('list转换后的元组:',tup)

x,y,z = tup

print('使用list转换之后赋值:',x,y,z)

# 多重赋值

#类似深度复制,a, b, c 是同一个对象,内存地址一样

a = b = c = 10

print(id(a),id(b),id(c))

print(a is b, b is c, a is c)

# 运算符

# + - * / % ** //

x = 5

y = 3

a = 4

b = 2

c = 2.4

print(x + y)

print(x - y)

print(x * y)

# 如果是除法,返回带小数点的浮点数

print(x / y)

# 取余数,比如 20 % 3 余数就是2,如果对 1取余结果为0,表示是整数

print(x % y)

print(c%1)

# 次方,表示x 的 y次数

print(x ** y)

# x / y 以后结果向下取整,也就是如果有小数,直接去掉小数点后面

print(x // y)

# 所有 a = a + b 等效于 a += b

# 上面的 + 可以换成 -、*、\、%、**、

a = 4

b = 2

a = a + b

print('======',a)

a = 4

a += b

print('======',a)

# 下面两种次方 等效

a = a**b

a**=b

print(a)

# 字符串的判断

str1 = '123'

str2 = 'Abc'

str3 = '123Abc'

#字符串判断是否全部是数字 isdigit,如果全部为数字返回True,否则返回False

print(str1.isdigit())

print(str2.isdigit())

print(str3.isdigit())

# 字符串判断是否全部是字符串,issalpha(),如果全是是字符串返回True,否则返回False

print(str1.isalpha())

print(str2.isalpha())

print(str3.isalpha())

# 如果判断是字符串和数字的组合,两者并集取反

print(not str1.isdigit() and not str1.isalpha())

print(not str2.isdigit() and not str2.isalpha())

print(not str3.isdigit() and not str3.isalpha())

#判断集合元素类型练习

列表 li=[1,’2’,’ab’,3,’as21’,4,’5b’,’6’,’568’,’10q’]将所有数字类型的元素,保存在字典第一 个 key中,将所有全部由数字组成的字符串类型的元素保存在字典的第二个 key中,剩 下的所有保存在字典的第三个 key中。 如 dic={key1:数字类型的值;key2:全部由数字组成的字符串元素;key3:剩下的其他元素}

li=[1,'2','ab',3,'as21',4,'5b','6','568','10q']

list1 =[] # 全是数字集合

list2 =[] # 字符串集合

list3 =[] #字符串和数字混合

for x in li:

try:

x.isdigit()

except AttributeError:

list1.append(x)

li.remove(x)

li2 = li.copy()

print('=====',li2)

for x in range(len(li)):

try:

if li[x].isdigit():

list2.append(li2[x])

else:

list3.append(li2[x])

except AttributeError:

pass

print(list1, list2, list3)

dic={'key1':list1 ,'key2':list2,'key3':list3}

print(dic)

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。