提高python代码的可读性,你需要知道这10个技巧(代码片段)

Python学习与数据挖掘 Python学习与数据挖掘     2023-02-22     670

关键词:

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学习与数据挖掘,后台回复:加群

scala:提高这段代码的可读性和风格

】scala:提高这段代码的可读性和风格【英文标题】:scala:improvereadabilityandstyleofthispieceofcode【发布时间】:2012-09-2515:17:30【问题描述】:下面是一个很常见的playframework2控制器:defsave(ideaId:Long)=CORSActionrequest=>Idea.findById(ideaId).ma... 查看详情

javascript:多行字符串

.../2012/10/04/2711551.html多行字符串的作用是用来提高源代码的可读性.尤其是当你处理预定义好的较长字符串时,把这种字符串分成多行书写更有助于提高代码的可读性和可维护性.在一些语言中,多行字符串还可以用来做代码注释.大部... 查看详情

记录--你可能忽略的10种javascript快乐写法(代码片段)

...一些知识,希望对大家有所帮助前言代码的简洁、美感、可读性等等也许不影响程序的执行,但是却对人(开发者)的影响非常之大,甚至可以说是影响开发者幸福感的重要因素之一;了解一些有美感的代码,不仅可以在一定程... 查看详情

千万别说你会python,如果不知道这10个python包(代码片段)

世界上有超过200,000个Python程序包(这只是基于官方的Python程序包索引PyPI托管的程序包)。这就引出了一个问题:拥有这么多的软件包,每个Python程序员都需要学习哪些软件包是最重要的?为了帮助回答这个问... 查看详情

python多行列表理解,以提高可读性。(代码片段)

查看详情

学习python的理由

...的大括号,去除语句末尾的分号等视觉杂讯,使得代码的可读性显著提高。阅读一段良好的Python程序就感觉像是在读英语一样,它使你能够专注于解决问题,而不用太纠结编程语言本身的语法③丰富强大的类库只要你想到的问题... 查看详情

python用于清理clang/cldoc文档xml输出的python脚本。非常适合提高cldoc文档网页的可读性(代码片段)

查看详情

代码整洁

整洁的代码能够提高项目的可读性、可维护性、可扩展性,这二天大致看了一本书代码整洁之道,粗略的看了一遍,总结了一下,写下来作为以后做项目的时候的参考。代码的整洁简单的总结二种分类:1.命名?有意义命名说明:... 查看详情

零基础学python需要注意哪些问题

...敲代码,进实战项目操作。参考技术APython是一门更注重可读性和效率的语言,尤其是相较于Java,PHP以及C++这样的语言,它的这两个优势让其在开发者中大受欢迎。如果你想入门Python,建议你来看看千锋给Python小白的一些入门建... 查看详情

提高代码可读性的一点小建议

3.UI工厂类与代码块UI工厂类: 其实代码很简单,就是把对Label,Button等控件的属性赋值封装一下,做到一行代码就能创建一个VIew,如下图,虽然这一句代码有点长,但是习惯之后写个View是真心快UI工厂类.h 查看详情

记录--你可能忽略的10种javascript快乐写法(代码片段)

...知识,希望对大家有所帮助前言代码的简洁、美感、可读性等等也许不影响程序的执行,但是却对人(开发者)的影响非常之大,甚至可以说是影响开发者幸福感的重要因素之一;了解一些有美感的代码,不仅可... 查看详情

设计程序时,怎么提高扩展性

...码重用相关的问题。因为引入了可扩展性,导致了代码的可读性降低,那宁可放弃。软件永远不是一个人维护,在开发软件的时候,可读性要排在第一位。如果可读性很差,影响的不 查看详情

python你绝对不知道的15个小技巧,知道的算我输(代码片段)

...备大量模块和库1.alloranyPython非常受欢迎的原因之一是其可读性和表达性。人们还经常把Python笑称为「可执行伪码(executablepseudocode)」。但是,当你可以编写这样的代码时,很难去反驳这种言论:x=[True,True,... 查看详情

编写更简洁的代码版本以提高可读性

】编写更简洁的代码版本以提高可读性【英文标题】:Writingacleanerversionofcodetoimprovereadability【发布时间】:2021-07-3019:55:53【问题描述】:我对R相当陌生,我希望知道是否有一种更简洁的方式来编写下面的代码。基本上,我从df1... 查看详情

如何提高代码的可读性学习笔记(代码片段)

...的大多数时间都花在坐在显示器前读写代码这件事上,那可读性不好的代码都是在谋杀自己or同事的生命,所以不如一开始就提炼技巧,努力写好代码;)2.How为提高代码可读性,先来分析代码实际运行环境。代码实际运行于两个地... 查看详情

9个都要了解的单行python代码(代码片段)

...通常会优先编写能够完成工作的代码,而不会关注代码的可读性以及代码的简洁性和效率。确切来说,这是完全没有问题的,但是有一些方法可以在不忽略可读性的情况下缩短我们的Python代码。单行Python代码,只要我们能够正确... 查看详情

提高插入游标的性能?

】提高插入游标的性能?【英文标题】:Increaseperformanceoninsertcursor?【发布时间】:2012-01-2217:04:37【问题描述】:我想问你如何提高这段代码中插入光标的性能?我需要使用动态plsql来获取数据,但不知道如何以最佳方式改进INSERT... 查看详情

代码简洁之道:一行python代码解决问题是时尚还是玄学

...thon的一行流既保证了代码的简洁,又不会牺牲很大的可读性。但一个看似如此简单的事情,如果不彻底掌握这门编程语言,是很难做到的。我认为,Python一行流能够帮助你提高编码技能,值得去学习,其... 查看详情