程序员必备的 Python 技巧和窍门?
programmingpythonserver side programming
我们将介绍一些有用的 Python 技巧和窍门,这些技巧和窍门在您为竞赛编程或为您的公司编写程序时会派上用场,因为它们可以减少代码并优化执行。
使用模块 heapq 获取列表中的 n 个最大元素
示例
import heapq marks = [91, 67, 34, 56, 78, 99, 87, 23, 78, 66] print("Marks = ",marks) print("Largest =",heapq.nlargest(2, marks))
输出
Marks = [91, 67, 34, 56, 78, 99, 87, 23, 78, 66] Largest = [99, 91]
使用模块 heapq 获取列表中的 n 个最小元素
示例
import heapq marks = [91, 67, 34, 56, 78, 99, 87, 23, 78, 66] print("Marks = ",marks) print("Smallest =",heapq.nsmallest(2, marks))
输出
Marks = [91, 67, 34, 56, 78, 99, 87, 23, 78, 66] Smallest = [23, 34]
从列表创建单个字符串
示例
myList = ['Hello', 'World'] print(" ".join(myList))
输出
Hello World
在一行中分配多个变量
示例
a, b, c = 10, 20, 30 print(a, b, c)
输出
10 20 30
在一行中循环遍历列表中的元素:列表推导
示例
myList = [5, 12, 15, 18, 24, 32, 55, 65] res = [number for number in myList if number % 5 == 0] print("Displaying numbers divisible by 5 = ",res)
输出
Displaying numbers divisible by 5 = [5, 15, 55, 65]
两个数字的就地交换
示例
a, b = 50, 70 print("Before Swapping = ",a, b) # swapping a, b = b, a print("After Swapping = ",a, b)
输出
Before Swapping = 50 70 After Swapping = 70 50
反转一行中的字符串
示例
# Reverse a string myStr = "This is it!!!" print("String = ",myStr) print("Reversed String = ",myStr[::-1])
输出
String = This is it!!! Reversed String = !!!ti si sihT
根据两个相关序列创建字典
示例
# 根据两个相关序列创建字典 s1 = ('Name', 'EmpId', 'Dept') r1 = ('Jones', 767, 'Marketing') print(dict (zip(s1, r1)))
输出
{'Name': 'Jones', 'EmpId': 767, 'Dept': 'Marketing'}
在 Python 中检查对象
示例
# 在 Python 中检查对象 myList =[1, 3, 4, 7, 9] print(dir(myList))
输出
['__add__', '__class__', '__contains__', '__delattr__', '__delitem__', '__dir__', '__doc__', '__eq__', '__format__', '__ge__', '__getattribute__', '__getitem__', '__gt__', '__hash__', '__iadd__', '__imul__', '__init__', '__init_subclass__', '__iter__', '__le__', '__len__', '__lt__', '__mul__', '__ne__', '__new__', '__reduce__', '__reduce_ex__', '__repr__', '__reversed__', '__rmul__', '__setattr__', '__setitem__', '__sizeof__', '__str__', '__subclasshook__', 'append', 'clear', 'copy', 'count', 'extend', 'index', 'insert', 'pop', 'remove', 'reverse', 'sort']