2022年 11月 5日

Python中常见的语法糖

Python中常见的语法糖

知识点导航:
1. 横线分隔符
2. 交换两个变量的值
3. 判断变量是否在范围内
4. 字符串的乘法
5. 列表相加
6. 列表切片
7. 解压序列赋值给多个变量
8. with open
9. 列表推导式
10. 取两个数中的最大值

1. 横线分隔数值

在Python3.6以及更高的版本中,像下面这样写就可以很清楚看出有几个0:

x = 1_000_000
print(x)
  • 1
  • 2

这不会影响变量的值,Python会自动将这些下横线忽略,运行结果:

1000000
  • 1

2. 交换两个变量的值

x = 11
y = 22

x, y = y, x
print(x, y)
  • 1
  • 2
  • 3
  • 4
  • 5

运行结果:

22 11
  • 1

3. 判断变量是否在范围内

x = 111

if 100 <= x <= 120:
    print("符合条件")
  • 1
  • 2
  • 3
  • 4

运行结果:

符合条件
  • 1

4. 字符串的乘法

print('-'*40)
print('#'*40)
  • 1
  • 2

运行结果:

----------------------------------------
########################################
  • 1
  • 2

5. 列表相加

list1 = [1, 2, 3]
list2 = [4, 5, 6]
list3 = list1 + list2
print(list3)
  • 1
  • 2
  • 3
  • 4

运行结果:

[1, 2, 3, 4, 5, 6]
  • 1

6. 列表切片

list1 = [1, 2, 3, 4, 5]

print(list1[2:-1])   # 打印第2个到倒数第一个元素之间的元素

print(list1[-1])     # 打印倒数第一个元素

print(list1[:3])     # 打印前3个元素

print(list1[-3:])    # 打印倒数前3个元素

print(list1[0:5:2])  # 范围为0到5(不包括),步长为2
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11

运行结果:

[3, 4]
5
[1, 2, 3]
[3, 4, 5]
[1, 3, 5]
  • 1
  • 2
  • 3
  • 4
  • 5

7. 解压序列赋值给多个变量

list1 = [1, 2, 3]
x, y, z = list1
print(x, y, z)

tuple1 = (1, 2, 3)
a, b, c = tuple1
print(a, b, c)
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7

运行结果:

1 2 3
1 2 3
  • 1
  • 2

8. with open

with open('filename.text, 'a') as file_object:
          file_object.write('content') # with将会自动帮我们关闭打开的文件对象
  • 1
  • 2

9. 列表推导式

list1 = [1, 2, 3]
print([i*i for i in list1])
  • 1
  • 2

运行结果:

[1, 4, 9]
  • 1

10. 取两个数中的最大值

a = 1
b = 3
c = [a, b][b > a]
print(c)
  • 1
  • 2
  • 3
  • 4

运行结果:

3
  • 1