Python每日一学 02——对象与变量( 二 )


50.24113.04
需要命名的对象可以是包含于圆括号、方括号、大括号或引号内的可迭代对象 。如果赋值号左边是一个名字,则将名字直接绑定到右侧对象上 。若左边名字多于一个时,名字数量必须与右侧的可迭代对象中的元素或字符数量相同,这些名字将按从左至右的顺序被绑定到对应元素或字符,这种操作称为同步赋值 。
x = 1, 2print(x)# (1, 2),名字 x 绑定到元组(1, 2)上,后面用x访问这个元组

Python每日一学 02——对象与变量

文章插图
(1, 2)
x, y = 1, 2# 左侧有2个名字,右侧对象中有2个元素1和2,数量相同print(x, y)# 1 2,要求右侧对象中元素数量与左侧变量数量相同
1 2
x, y = {1, 2}print(x, y)# 1 2,要求右侧对象中元素数量与左侧变量数量相同
1 2
x, y, z = 'abc'print(x, y, z)# a b c,要求右侧对象中字符数量与左侧变量数量相同
a b c
利用同步赋值方法可以实现两个变量指向对象的交换:
m, n = 5, 10# m,n = (5,10),将5 赋值给m, 将10赋值给nprint(m, n)# 输出 5 10print(f'm = {m}, n = {n}')# 输出 m = 5, n = 10m, n = n, m# 交换变量 m 和 n 所指向的对象print(m, n)# 输出 10 5print(f'm = {m}, n = {n}')# 输出 m = 10, n = 5
5 10m = 5, n = 1010 5m = 10, n = 5
从上面输出中可以看到,同步赋值可以方便的交换两个变量的值 。用f-格式输出语义更清晰明了,推荐使用 。split()方法可根据指定分隔符将对象切分为列表,可将这个方法作用于input()函数上,将在一行内输入的多个数据切分为一个列表,被分隔符分开的多个数据作为列表的元素 。参数缺省时,默认用空格切分对象,如果指定了分隔符,则用分隔符进行切分 。
m,n = input().split()# split()参数缺省时,可根据空格将输入切分为列表# 例如输入 “100 200”,可被切分为[100,200],然后将列表中的元素分别赋值给m,nprint(m,n)# 输出 100,200print(f'm = {m}, n = {n}')# 输出 m = 5, n = 10
100 200100 200m = 100, n = 200
split()可根据逗号(‘,’)若其他符号将输入切分为列表,用于切分的符号放到括号中作为参数 。
m,n = input().split(',')# split()可根据逗号(',')将输入切分为列表# 例如输入 “100,200”,可被切分为[100,200],然后将列表中的元素分别赋值给m,nprint(m,n)# 输出 100,200print(f'm = {m}, n = {n}')# 输出 m = 5, n = 10
100,200100 200m = 100, n = 200
例如:用hour, , 做变量名,在一行内输入一个包含小时、分钟和秒的时间,按测试用例格式输出(表示时间的数字根据自己的输入变化) 。
# 补充你的代码hour, minute, second = input().split(':')print(f'现在是北京时间{hour}时{minute}分{second}秒')
23:07:58现在是北京时间23时07分58秒
提供了“+=、-=、*=、/=、//=、%=、**%=”等增强赋值语句,在单个语句中将二元运算和赋值语句合为一体,具体描述参见下表 。
c = 100# 将数字100命名为cprint(c)c = c + 8# 将 100 + 8 的运算结果命名为 c,c值为108print(c)c += 8# 与c = c + 8相同,将 108 + 8 的运算结果命名为 c,c值为116print(c)