文山羊 2020-03-23
一直以来,Python因其强大的语言表示能力和丰富数据类型,可以在语法上玩出很多精炼有效的代码,今天我们来总结7种Python的编程技巧,可以用在平时的编程中,提高可读性、易用性和程序效率的提升。
1. 快速交换变量值
x, y = 1, 2 x, yy = y, x
通过以上代码可以简单的实现变量之间的数据交换。
因为在Python中,变量不直接存储值,而是引用一个内存地址,所以我们交换变量时,只是交换了引用的地址。
我们还可以通过阅读Python的源码 ceval.c,其中的ROT_TWO、ROT_THREE、ROT_FOUR这些指令可以直接交换两个变量、三个变量、四个变量的值。
2. 合并列表为字符串
str_list = ['hello', 'world', 'good'] str1 = "".join(str_list)
该方法比传统的 "字符串1"+"字符串2"的方式效率更高,原因在于通过+号对字符串进行连接,每次都会产生新的对象,内存开销变大了。而join不会。
通过字符串的 join方法,我们可以将一个列表中的所有字符串元素拼接起来,形成一个新的字符串。
3. 拆分字符串为列表
str1 = 'hello world good' str_list = str1.split()
和join方法所对应的是split方法,作用是根据标识符分割字符串,生成一个新的列表。
4. 字典合并
a = {'a': 1, 'b': 2} b = {'b': 3, 'c': 4} x = {**a, **b} print(x)
通过以上方式可以最简单的合并两个字典的内容。
5. 删除字符串两端的无用字符
str1 = " 测试 " str2 = "///测试///" print(str1.strip()) print(str2.strip("/"))
6. 找出列表中出现最多次数的元素
list1 = [6, 1, 3, 4, 2, 2, 3, 1, 5, 5, 3] print(max(set(list1), key = list1.count))
该方法用到大量内置方法,效率比较高。
7. 初始化列表时快速填充元素
a = [0] * 10 print(a)
通过本方法可以快速填充元素数量,省去了挨个初始化列表的过程。