省时省力,这些Python高效代码片段必须牢记
我们要阅读优秀框架的源码,不仅要弄懂框架的原理,更要学习他们写的代码,要将他们写的代码作为奋进的目标!
其实,普通程序员写的代码和大神写的代码的最大区别就是我们是用代码堆砌功能,很少注重代码品质和效率,而大神们能写出优雅精简的代码,实现一个功能我们需要几十上百行代码,而他们可能一行就解决了!并且他们的代码运行效率还比你高!
今天给大家分享一些常用的高效代码片段,希望可以给大家的代码质量带来一点点提高!
单行循环列表
mylist = [11,24,56,45,60] print([i*3 for i in mylist]) #[33, 72, 168, 135, 180] print([i-10 for i in mylist]) [33, 72, 168, 135, 180] #[1, 14, 46, 35, 50] 1234
这种写法可以减少你的代码行数,而且比较清晰。
获取数据类型
mylist = [123, 'python', 34.23, False, [4,5]] print([type(i) for i in mylist]) # [<class 'int'>, <class 'str'>, <class 'float'>, <class 'bool'>, <class 'list'>] 123
我们有时候需要知道数据的类型,做对应的转换或者操作。可以这样判断:
print(type(123) == int) # True 1
获取数字的整数值
integer = 8938485 digitz = [int(i) for i in str(integer)] print(digitz) # [8, 9, 3, 8, 4, 8, 5] 1234
这里的原理就是先将数字转换为字符串,然后再进行循环获取。
链式比较
a =5 print(1 == a < 2) # False print(2 < 4 < 5 == a) # True 123
看到第一个,是不是会这样理解:1 == a 为 False,False < 2 为 False,所以最后答案为 False。
答案是对的,但是过程是错的。在 Python 中,比较逻辑是这样的:分别比较 1 == a 和 a < 2,两个都为 True,结果才为 True。
按照这个逻辑,自己领会一下第二个的运行逻辑。
字符串乘法器
如果需要重复生成字符串,通常我们会这样:
str = '' for i in range(10): str += 'Python' print(str) # PythonPythonPythonPythonPythonPythonPythonPythonPythonPython 12345
其实,优雅的方式只需一行:
print('Python'*10) # PythonPythonPythonPythonPythonPythonPythonPythonPythonPython 12
带分隔符打印
print('123', '234', 100, sep='x') # 123x234x100 12
还有另外一种方式:
print('x'.join(['123', '234', '100'])) # # 123x234x100 变量交换 d1 = 34 d2 = 23 d1, d2 = d2, d1 print(d1, d2) # 23 34 12345678
字符串变小写
mylist = ['ABCD', 'Python', 'I am Chinese'] print([data.lower() for data in mylist]) # ['abcd', 'python', 'i am chinese'] 123
统计列表中元素出现频率
import collections mylist = [10, 11, 12, 3, 3, 11, 11, 33] print(dict(collections.Counter(mylist))) # {10: 1, 11: 3, 12: 1, 3: 2, 33: 1} 1234
更新字典
mydict = {1: 'Python', 2: 'Javascript', 3: 'Java', 4: 'C#'} mydict.update({2: 'C'}) print(mydict) # {1: 'Python', 2: 'C', 3: 'Java', 4: 'C#'} mydict.update({5: 'Svelte'}) print(mydict) # {1: 'Python', 2: 'C', 3: 'Java', 4: 'C#', 5: 'Svelte'} 非 Pandas 方式读取 csv 文件 import csv with open('Test.csv', 'r') as f: read = csv.reader(f) print([r for r in read]) 123456789101112
总结
好了,这些代码片段需要好好消化,方能事半功倍!
网址:省时省力,这些Python高效代码片段必须牢记 https://www.yuejiaxmz.com/news/view/4214
相关内容
Python项目设计:个人财务管理系统实现与功能详解在上海如何节省开支?这些省钱技巧有哪些实际效果?
节省造句,用节省造句子(10
做家务如何提高效率节省时间?
日常生活中有哪些省钱技巧?记住这12个省钱方法
生活小妙招 10个省时省力的居家清洁技巧
这些安全知识要牢记!
实用的省钱指南:每月能节省 1000 元的 30 个绝佳妙法,还有高省 APP 网购优惠券的领取指南!
如何清洁家庭卫生 省时省力的居家清洁技巧
节俭又时尚的都市生活省钱妙招——中新网