提高 Python 代码的可读性,你需要知道这10个技巧
Posted Python学习与数据挖掘
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了提高 Python 代码的可读性,你需要知道这10个技巧相关的知识,希望对你有一定的参考价值。
Python的可读性和简单性是其广受欢迎的两大原因,本文介绍20个常用的Python技巧来提高代码的可读性,并能帮助你节省大量时间,下面的技巧将在你的日常编码练习中非常实用。
注:文末提供 Python 技术交流群
1. 字符串反转
字符串反转有很多方法,咱们再这里介绍两种:一种是切片,一种是python字符串的reversed方法。
# -!- 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()**是每个单词开头的首字母都大写
# 首字母大写
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的唯一性来确定字符串的唯一元素:
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简单多了,交换两个变量无需定义第三个中间变量,直接交换即可实现
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()**方法
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.列表推导式
使用列表推导式可以快速生成一个列表或者根据列表生成满足需求的列表
# 生成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()方法实现
lists = ['hello', 'world', 'python', 'java', 'c++']
# 合并字符串
new_str = ' '.join(lists)
ic(new_str)
'''
ic| new_str: 'hello world python java c++'
'''
8. 拆分字符串
拆分字符串我们使用string的split()方法实现
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. 回文串检测
回文串是指aba、abba、cccbccc、aaaa这种左右对称的字符串。我们可以根据之前提到的切片来检测这种特殊的字符串序列
str = '20211202'
if str == str[::-1]:
print('yes')
else:
print('no')
'''
yes
'''
10. 统计列表元素出现次数
统计列表中元素各自出现的次数我们使用collections 的Counter方法
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)]
'''
技术交流
欢迎转载、收藏、有所收获点赞支持一下!
目前开通了技术交流群,群友已超过2000人,添加时最好的备注方式为:来源+兴趣方向,方便找到志同道合的朋友
- 方式①、发送如下图片至微信,长按识别,后台回复:加群;
- 方式②、添加微信号:dkl88191,备注:来自CSDN
- 方式③、微信搜索公众号:Python学习与数据挖掘,后台回复:加群
以上是关于提高 Python 代码的可读性,你需要知道这10个技巧的主要内容,如果未能解决你的问题,请参考以下文章
养成这7个良好的编程习惯,可以很大程度上增加你的Python性能