IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> Python知识库 -> 几点技巧让你的 python 代码更加 pythonic -> 正文阅读

[Python知识库]几点技巧让你的 python 代码更加 pythonic

1. 多变量赋值

同时为多个变量进行赋值

# 分别为 a, b, c 赋值 1, 2, 3
a, b, c = 1, 2, 3
print('a={}, b={}, c={}'.format(a, b, c))
# a=1, b=2, c=3

2. 变量值交换

不用中间变量交换变量的值

# 交换 a, b 的值
a, b = 1, 2
a, b = b, a
print('a={}, b={}'.format(a, b))
# a=2, b=1

3. 多项判断

用 in 代替 or 进行判断

# 判断 a 是否等于 1, 2, 3 中的某一个
a = 2
if a in (1, 2, 3):
    print(True)
else:
    print(False)
# True

4. 多列表同步处理

用 zip 同时操作多个列表的对应元素

# 两个列表中同索引元素相减成新列表
x, y, z = [10, 20], [1, 2], []
for i, j in zip(x, y):
    z.append(i - j)
print(z)
# [9, 18]

5. 去除列表重复元素

用 set 去除列表中重复的元素

# 去除列表中重复出现的字符 a
x, y = ['a', 'b', 'c', 'a', 'd'], []
y = list(set(x))
print(x, y, sep='\n')
# ['a', 'b', 'c', 'a', 'd']
# ['b', 'a', 'c', 'd']

6. 上下文管理

对于结束需要手动释放资源的操作可以放入上下文管理器自动释放资源

# 将写操作放入上下文管理器中
with open('hello.txt', 'w') as f:
	f.write('Hello World!')
# Hello World!

7. 序列迭代

用枚举函数 enumerate 枚举可迭代对象和对应索引

x = ['a', 'b', 'c', 'd', 'e']
for i, j in enumerate(x):
    print(i, j)
# 0 a
# 1 b
# 2 c
# 3 d
# 4 e

8. 获取列表内容

将列表中的元素一次取出

# 对应取出列表中所有元素
x = [1, 2, 3, 4]
x0, x1, x2, x3 = x
print(x0, x1, x2, x3)
# 1 2 3 4

# 只取出列表首尾元素
x = [1, 2, 3, 4]
head, *_, tail = x
print(head, tail)
# 1 4

9. 字符串列表转字符串

用 join 方法指定间隔合并字符串列表为长字符串

# 间隔空格将字符串列表连接成长字符串
x = ['Hello', 'World', '!']
y = ' '.join(x)
print(y)
# Hello World !

10. 三目运算

用 if···else··· 实现三目运算

# 如果 a 大于 10 赋值给 b 真,否则假
a = 10
b = True if a > 5 else False
print(b)
# True

11. 打印输出的格式

用 f 字符串打印输出,提高代码可读性

# 打印名字和年龄
name = 'Xiao Ming'
age = 18
print('name: %s, age: %d' % (name, age))
print('name: {}, age: {}'.format(name, age))
print(f'name: {name}, age: {age}')
# name: Xiao Ming, age: 18
# name: Xiao Ming, age: 18
# name: Xiao Ming, age: 18

12. 链式比较

简化条件判断中的与逻辑

# a 同时满足两个条件
a, b = 10, 0
if 5 < a < 15:
	b = - a
print(b)
# -10

13. 字符串翻转

# 将字符串 x 进行翻转
x = 'olleH'
y = x[::-1]
print(y)
# Hello

14. 双列表转字典格式

用 dict 和 zip 函数将列表对应转为字典格式

# x 和 y 中对应元素变为字典键值对
x = ['name', 'age']
y = ['Xiao Ming', 18]
z = dict(zip(x, y))
print(z)
# {'name': 'Xiao Ming', 'age': 18}

15. 迭代器生成数组

用迭代器生成数组

# 生成 20 以内偶数数组
x = [i*2 for i in range(10)]
print(x)
# [0, 2, 4, 6, 8, 10, 12, 14, 16, 18]

16. switch 判断形式

用 get 方法实现 switch 功能

# 根据索引找到姓名并打印
index = 2
name = {
    0: "Xiao Ming",
    1: "Er Ming",
    2: "Da Ming"
    }.get(index, "Not Found")
print(f'index: {index}, name: {name}')
# ndex: 2, name: Da Ming

17. 二维数组遍历

# 循环遍历二维数组并按行打印
x = [
    ['Xiao Ming', 18],
    ['Er Ming', 19],
    ['Da Ming', 20]
]
for name, age in x:
    print(f'name: {name}, age: {age}')
# name: Xiao Ming, age: 18
# name: Er Ming, age: 19
# name: Da Ming, age: 20

18. 列表切割

# 切割列表元素,前两个,中间两个,后两个
x = [1, 2, 3, 4, 5, 6]
x1 = x[:2]
x2 = x[2:4]
x3 = x[-2:]
print(x1, x2, x3, sep='\n')
# [1, 2]
# [3, 4]
# [5, 6]

19. 判断列表是否为空

# 直接将列表名作为判断条件
x = []
if x:
    print('x is empty.')
else:
    print('x is not empty.')
# x is not empty.

在这里插入图片描述

  Python知识库 最新文章
Python中String模块
【Python】 14-CVS文件操作
python的panda库读写文件
使用Nordic的nrf52840实现蓝牙DFU过程
【Python学习记录】numpy数组用法整理
Python学习笔记
python字符串和列表
python如何从txt文件中解析出有效的数据
Python编程从入门到实践自学/3.1-3.2
python变量
上一篇文章      下一篇文章      查看所有文章
加:2021-08-10 13:22:40  更:2021-08-10 13:22:42 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年12日历 -2024/12/26 1:10:25-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码
数据统计