脚本之家,脚本语言编程技术及教程分享平台!
分类导航

Python|VBS|Ruby|Lua|perl|VBA|Golang|PowerShell|Erlang|autoit|Dos|bat|

服务器之家 - 脚本之家 - Python - 分享10提高 Python 代码的可读性的技巧

分享10提高 Python 代码的可读性的技巧

2022-10-20 11:46Python学习与数据挖掘 Python

这篇文章主要介绍了分享10提高 Python 代码的可读性的技巧,本文介绍20个常用的Python技巧来提高代码的可读性,并能帮助你节省大量时间,下面的技巧将在你的日常编码练习中非常实用,需要的朋友可以参考一下

1. 字符串反转

字符串反转有很多方法,咱们再这里介绍两种:一种是切片,一种是python字符串的reversed方法。

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
# -!- coding: utf-8 -!-
string = 'hello world'
 
# 方法1
new_str = string[::-1]
ic(new_str)
 
# 方法二
new_str2 = ''.join(reversed(string))
ic(new_str2)
 
'''
ic| new_str: 'dlrow olleh'
ic| new_str2: 'dlrow olleh'
'''

2. 首字母大写

这里咱们也是介绍两种方法,区别之处在于**capitalize()**仅是首字母大写

**title()**是每个单词开头的首字母都大写

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
# 首字母大写
string = 'hello python and world'
 
# 方法一
new_str = string.capitalize()
ic(new_str)
 
 
# 方法二
new_str2 = string.title()
ic(new_str2)
 
'''
ic| new_str: 'Hello python and world'
ic| new_str2: 'Hello Python And World'
'''

3. 查询唯一元素

我们利用set的唯一性来确定字符串的唯一元素:

?
1
2
3
4
5
6
7
8
9
10
11
12
string = 'hellohellohello'
new_str = set(string)
# set类型
ic(new_str)
# 字符串类型
new_str = ''.join(new_str)
ic(new_str)
 
'''
ic| new_str: {'l', 'o', 'h', 'e'}
ic| new_str: 'lohe'
'''

4. 变量交换

python中的变量交换比java简单多了,交换两个变量无需定义第三个中间变量,直接交换即可实现

?
1
2
3
4
5
6
7
8
9
10
11
12
a = 'hello'
b = 'world'
ic(a+b)
 
# 直接交换两个变量
a, b = b, a
ic(a+b)
 
'''
ic| a+b: 'helloworld'
ic| a+b: 'worldhello'
'''

5. 列表排序

列表排序这里我们也提供两种方式。第一个是列表自带的**sort()方法;第二个是python内置函数sorted()**方法

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
score = [88, 99, 91, 85, 94, 85, 94, 78, 100, 80]
# 方法一
new_score = sorted(score)
ic('默认升序:', new_score)
 
score = [57, 29, 11, 27, 84, 34, 87, 25, 70, 60]
# 方法二
new_score2 = sorted(score, reverse=True)
ic('设置降序', new_score2)
 
'''
ic| '默认升序:', new_score: [78, 80, 85, 85, 88, 91, 94, 94, 99, 100]
ic| '设置降序', new_score2: [87, 84, 70, 60, 57, 34, 29, 27, 25, 11]
'''

6.列表推导式

使用列表推导式可以快速生成一个列表或者根据列表生成满足需求的列表

?
1
2
3
4
5
6
7
8
9
10
11
12
13
# 生成10个10-100以内随机整数
numbers = [random.randint(10, 100) for x in range(10)]
ic(numbers)
 
# 输入5折后的价格
price = [800, 500, 400, 860, 780, 520, 560]
half_price = [(x*0.5)for x in price]
ic(half_price)
 
'''
ic| numbers: [64, 22, 80, 70, 34, 81, 74, 35, 85, 12]
ic| half_price: [400.0, 250.0, 200.0, 430.0, 390.0, 260.0, 280.0]
'''

7. 合并字符串

合并字符串我们使用string.join()方法实现

?
1
2
3
4
5
6
7
8
9
lists = ['hello', 'world', 'python', 'java', 'c++']
 
# 合并字符串
new_str = ' '.join(lists)
ic(new_str)
 
'''
ic| new_str: 'hello world python java c++'
'''

8. 拆分字符串

拆分字符串我们使用string的split()方法实现

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
string = 'hello world python java c++'
string2 = 'hello|world|python|java|c++'
 
# 拆分字符串
new_str = string.split(' ')
ic(new_str)
 
new_str2 = string2.split('|')
ic(new_str2)
 
'''
ic| new_str: ['hello', 'world', 'python', 'java', 'c++']
ic| new_str2: ['hello', 'world', 'python', 'java', 'c++']
'''

9. 回文串检测

回文串是指abaabbacccbcccaaaa这种左右对称的字符串。我们可以根据之前提到的切片来检测这种特殊的字符串序列

?
1
2
3
4
5
6
7
8
9
10
str = '20211202'
 
if str == str[::-1]:
    print('yes')
else:
    print('no')
 
'''
yes
'''

10. 统计列表元素出现次数

统计列表中元素各自出现的次数我们使用collections Counter方法

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
from collections import Counter
lists = ['a', 'a', 'b', 'b', 'b', 'c', 'd', 'd', 'd', 'd', 'd']
 
# 统计所有元素出现的次数
counts = Counter(lists)
ic(counts)
 
# 统计某一元素出现的次数
ic(counts['d'])
 
# 统计出现最多次数的一个元素
ic(counts.most_common(1))
 
'''
ic| counts: Counter({'d': 5, 'b': 3, 'a': 2, 'c': 1})
ic| counts['d']: 5
ic| counts.most_common(1): [('d', 5)]
'''

到此这篇关于分享10提高 Python 代码的可读性的技巧的文章就介绍到这了,更多相关提高 Python 代码可读性内容请搜索服务器之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持服务器之家!

原文链接:https://blog.csdn.net/weixin_38037405/article/details/121755149

延伸 · 阅读

精彩推荐