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

目录
  • 1.字符串反转
  • 2.首字母大写
  • 3.查询唯一元素
  • 4.变量交换
  • 5.列表排序
  • 6.列表推导式
  • 7.合并字符串
  • 8.拆分字符串
  • 9.回文串检测
  • 10.统计列表元素出现次数

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. 回文串检测

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

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)]
'''

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

(0)

相关推荐

  • 分享Python 的24个编程超好用技巧

    目录 1.ALLORANY 2.BASHPLOTIB 3.COLLECTIONS 4.DIR 5.EMOJI 6.FROM_FUTURE_IMPORT 7.GEOPY 8.HOWDOI 9.INSPECT 10.JEDI 11.**KWARGS 12.LISTCOMPREHENSIONS 13.MAP 14.NEWSPAPER3K 15.OPERATOROVERLOADING(操作符重载) 16.PPRINT 17.QUEUE(队列) 18.sh 19.TYPEHINT(类型提示) 20.UUI

  • 详解让Python性能起飞的15个技巧

    目录 前言 如何测量程序的执行时间 1.使用map()进行函数映射 2.使用set()求交集 3.使用sort()或sorted()排序 4.使用collections.Counter()计数 5.使用列表推导 6.使用join()连接字符串 7.使用x,y=y,x交换变量 8.使用while1取代whileTrue 9.使用装饰器缓存 10.减少点运算符(.)的使用 11.使用for循环取代while循环 12.使用Numba.jit加速计算 13.使用Numpy矢量化数组 14.使用in检查

  • 你需要掌握的20个Python常用技巧

    目录 1.字符串反转 2.每个单词的第一个字母大写 3.字符串查找唯一元素 4.重复打印字符串和列表n次 5.列表生成 6.变量交换 7.字符串拆分为子字符串列表 8.多个字符串组合为一个字符串 9.检测字符串是否为回文 10.统计列表中元素的次数 11.判断两个字符串是否为Anagrams 12.使用try-except-else-block模块 13.使用枚举函数得到key/value对 14.检查对象的内存使用情况 15.合并字典 16.计算执行一段代码所花费的时间 17.列表展开 18.

  • Python数据处理的26个Pandas实用技巧总结

    目录 从剪贴板中创建DataFram 将DataFrame划分为两个随机的子集 多种类型过滤DataFrame DataFrame筛选数量最多类别 处理缺失值 一个字符串划分成多列 Series扩展成DataFrame 对多个函数进行聚合 聚合结果与DataFrame组合 选取行和列的切片 MultiIndexedSeries重塑 创建数据透视表 连续数据转类别数据 StyleaDataFrame 额外技巧 ProfileaDataFrame 大家好,今天给大家分享一篇 pandas 实用技巧,

  • 提升 Python 代码运行速度的6个技巧

    其实,Python 比我们想象的运行的要快.我们之所以有先入为主的认为Python运行慢,可能是我们平常的误用和缺乏使用技巧知识. 接下来让我们看看如何用一些简单的Trick来提高我们程序的运行性能 1.使用内置函数 Python中的许多内置函数都是用C实现的,并且经过了很好的优化.因此,如果熟悉这些内置函数,就可以提高Python代码的性能.一些常用的内置函数有sum().len().map().max()等. 假设我们有一个包含单词的列表,我们希望每个单词的首字母均变为大写.此时使用map(

  • Python数据预处理常用的5个技巧

    目录 前言 数据集 示例 1 示例 2 示例 3 示例 4 示例 5 总结 前言 我们知道数据是一项宝贵的资产,近年来经历了指数级增长.但是原始数据通常不能立即使用,它需要进行大量清理和转换. Pandas 是 Python 的数据分析和操作库,它有多种清理数据的方法和函数.在本文中,我将做5个示例来帮助大家掌握数据清理技能. 数据集 这是一个包含脏数据的示例数据框 让我们看看可以做些什么来使这个数据集变得干净. 第一列是多余的,应该删除: Date 没有标准: Name 写成姓氏.名字,并有大

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

    目录 1.字符串反转 2.首字母大写 3.查询唯一元素 4.变量交换 5.列表排序 6.列表推导式 7.合并字符串 8.拆分字符串 9.回文串检测 10.统计列表元素出现次数 1. 字符串反转 字符串反转有很多方法,咱们再这里介绍两种:一种是切片,一种是python字符串的reversed方法. # -!- coding: utf-8 -!- string = 'hello world' # 方法1 new_str = string[::-1] ic(new_str) # 方法二 new_str

  • 提高Python代码可读性的5个技巧分享

    目录 1. Comments 2. Explicit Typing 3. Docstrings (Documentation Strings) 4. Readable Variable Names 5. Avoiding Magic Numbers 总结 不知道小伙伴们是否有这样的困惑,当我们回顾自己 6 个月前编写的一些代码时,往往会看的一头雾水,或者是否当我们接手其他人的代码时, Python 中有许多方法可以帮助我们理解代码的内部工作原理,良好的编程习惯,可以使我们的工作事半功倍! 例如,

  • 提高python代码可读性利器pycodestyle使用详解

    目录 关于PEP-8 目的 安装 基本用法 高级用法 结论 编程是数据科学中不可或缺的技能,虽然创建脚本来执行基本功能很容易,但编写大规模可读性良好的代码需要更多的思考. 关于PEP-8 pycodestyle 检查器提供基于 PEP-8 样式约定的代码建议.那么 PEP-8 到底是什么呢? PEP 代表 Python 增强建议,PEP-8 是一个概述编写 Python 代码最佳实践的指南.它的主要目标是通过标准化代码样式来提高代码的整体一致性和可读性. 目的 快速浏览一下PEP-8文档,就会发

  • 10行Python代码实现Web自动化管控的示例代码

    本博客将为各位分享Python Helium库,其是在 Selenium库基础上封装的更加高级的 Web 自动化工具,它能够通过网页端可见的标签.名称来和 Web 进行交互,据说比Selenium库简单50%,Helium库主要功能包括:模拟鼠标点击.滑动功能:模拟键盘按键功能:刷新网页功能等. 通过使用Helium库,了解其基本的API使用,即使不熟悉HTML.CSS等网页知识,也可轻松完成网页自动化开发设计,实现学习.工作所需. 1.模块安装 Helium库安装使用pip指令即可实现,如下所

  • 10 行 Python 代码教你自动发送短信(不想回复工作邮件妙招)

    最近工作上有个需求,当爬虫程序遇到异常的时候,需要通知相应的人员进行修复.如果是国外可能是通过邮件的方式来通知,但国内除了万年不变的 qq 邮箱,大部分人都不会去再申请其他的账号,qq 邮箱也是闲的蛋疼的时候才会瞄一眼.你还记得上次看邮箱的内容是什么时候吗? 所以在国内最好的通知方式是通过手机短信,今天就教大家利用 python 10 行代码实现短信发送. Twilio 短信代理服务已经有非常多成熟的方案,比如国内的阿里云.这次我介绍的是国外的一个代理商「Twilio」,使用邮箱注册即送 15

  • 10 行Python 代码实现 AI 目标检测技术【推荐】

    只需10行Python代码,我们就能实现计算机视觉中目标检测. from imageai.Detection import ObjectDetection import os execution_path = os.getcwd() detector = ObjectDetection() detector.setModelTypeAsRetinaNet() detector.setModelPath( os.path.join(execution_path , "resnet50_coco_b

  • 10行Python代码计算汽车数量的实现方法

    当你还是个孩子坐车旅行的时候,你玩过数经过的汽车的数目的游戏吗? 在这篇文章中,我将教你如何使用10行Python代码构建自己的汽车计数程序.以下是环境及相应的版本库: Python版本 3.6.9 cvlib: 0.2.2 opencv-python: 4.1.1.26 tensorflow: 1.14.0 matplotlib: 3.1.1 Keras: 2.2.5 下面的代码用于导入所需的python库.从存储中读取图像.对图像执行目标检测.用边界框显示图像以及关于检测目标的标签.计算图像

  • 提高python代码运行效率的一些建议

    1. 优化代码和算法 一定要先好好看看你的代码和算法.许多速度问题可以通过实现更好的算法或添加缓存来解决.本文所述都是关于这一主题的,但要遵循的一些一般指导方针是: 测量,不要猜测. 测量代码中哪些部分运行时间最长,先把重点放在那些部分上. 实现缓存. 如果你从磁盘.网络和数据库执行多次重复的查找,这可能是一个很大的优化之处. 重用对象,而不是在每次迭代中创建一个新对象.Python 必须清理你创建的每个对象才能释放内存,这就是所谓的"垃圾回收".许多未使用对象的垃圾回收会大大降低软件

  • 10行Python代码就能实现的八种有趣功能详解

    目录 一.生成二维码 二.生成词云 三.批量抠图 四.文字情绪识别 五.识别是否带了口罩 六.简易信息轰炸 七.识别图片中的文字 八.简单的小游戏 Python凭借其简洁的代码,赢得了许多开发者的喜爱.因此也就促使了更多开发者用Python开发新的模块,从而形成良性循环,Python可以凭借更加简短的代码实现许多有趣的操作.下面我们来看看,我们用不超过10行代码能实现些什么有趣的功能. 一.生成二维码 二维码又称二维条码,常见的二维码为QR Code,QR全称Quick Response,是一个

  • 分享方便调试Python代码的2个实用工具

    目录 1. 引言 2. 动机 3. Loguru 3.1 安装 3.2 举个栗子 3.3 使用Loguru 4. Snoop 4.1 安装 4.2 举例 4.3 使用factorial 5. 总结 1. 引言 今天来给小伙伴推荐两款实用的便于调试Python代码的工具,可以方便展示我们调试代码的中间状态,提升大家的编码效率. 2. 动机 在日常工作中,经常写Python的小伙伴经常会遇到需要调试代码bug的情形,有时候我们Python的错误提示信息特别丑, 举例如下: 2 divided by

随机推荐