22个Python的万用公式分享

  • Post category:Python

22个Python的万用公式分享

Python是一门非常强大的编程语言,拥有非常丰富的库和函数可以使用,这些库和函数中又有许多是用于解决常见问题的万用公式。在这里,我们分享22个Python的万用公式,帮助你更好地掌握Python编程技巧。

1. 计算列表中数字总和

使用sum()函数可以计算列表中所有数字的总和,示例代码如下:

nums = [1, 2, 3, 4, 5]
total = sum(nums)
print(total)

输出结果为:

15

2. 判断字符串是否包含某个子串

使用in关键字可以判断一个字符串是否包含另一个字符串,示例代码如下:

string = "hello world"
substring = "world"
if substring in string:
    print("包含子串")
else:
    print("不包含子串")

输出结果为:

包含子串

3. 删除列表中的重复元素

使用set()函数可以将列表转换为集合,集合中的元素是唯一的,然后再将集合转换回列表即可得到一个去重后的列表,示例代码如下:

nums = [1, 2, 3, 2, 1, 4, 5, 4]
unique_nums = list(set(nums))
print(unique_nums)

输出结果为:

[1, 2, 3, 4, 5]

4. 统计列表中元素出现次数

使用collections模块中的Counter类可以统计列表中元素出现的次数,示例代码如下:

from collections import Counter

nums = [1, 2, 3, 2, 1, 4, 5, 4]
count_nums = Counter(nums)
print(count_nums)

输出结果为:

Counter({1: 2, 2: 2, 3: 1, 4: 2, 5: 1})

5. 将列表按照指定字段排序

使用sorted()函数和lambda表达式可以按照列表中的指定字段排序,示例代码如下:

students = [{"name": "Tom", "age": 18}, {"name": "Jack", "age": 20}, {"name": "Amy", "age": 16}]
students_sorted_by_age = sorted(students, key=lambda x: x['age'])
print(students_sorted_by_age)

输出结果为:

[{'name': 'Amy', 'age': 16}, {'name': 'Tom', 'age': 18}, {'name': 'Jack', 'age': 20}]

6. 将列表转为字符串

使用join()函数可以将列表中的元素拼接成一个字符串,示例代码如下:

words = ["hello", "world", "python"]
sentence = " ".join(words)
print(sentence)

输出结果为:

hello world python

7. 排列组合计算

使用math模块中的factorial()函数和combinations()函数可以计算排列组合,示例代码如下:

import math
from itertools import combinations

# 计算5的阶乘
factorial_5 = math.factorial(5)
print(factorial_5)

# 计算从5个元素中选择3个元素的组合数
combinations_3_from_5 = list(combinations(range(5), 3))
print(combinations_3_from_5)

输出结果为:

120
[(0, 1, 2), (0, 1, 3), (0, 1, 4), (0, 2, 3), (0, 2, 4), (0, 3, 4), (1, 2, 3), (1, 2, 4), (1, 3, 4), (2, 3, 4)]

8. 生成指定范围内的随机整数

使用random模块中的randint()函数可以生成指定范围内的随机整数,示例代码如下:

from random import randint

# 生成1到10之间的随机整数
random_num = randint(1, 10)
print(random_num)

输出结果为:

5

9. 遍历列表时显示进度条

使用tqdm模块可以在遍历列表时显示进度条,示例代码如下:

from tqdm import tqdm

nums = [1, 2, 3, 4, 5]
for num in tqdm(nums):
    # 这里写你的循环体代码
    pass

输出结果为:

100%|██████████| 5/5 [00:00<00:00, 11303.11it/s]

而不是简单的:

1
2
3
4
5

10. 计算代码运行时间

使用time模块可以计算代码运行的时间,示例代码如下:

import time

start_time = time.time()

# 这里写你要计算时间的代码
pass

end_time = time.time()
elapsed_time = end_time - start_time
print(elapsed_time)

输出结果为:

0.001

11. 查找列表中某个元素的索引值

使用index()函数可以查找列表中某个元素的索引值,示例代码如下:

words = ["hello", "world", "python"]
index_of_world = words.index("world")
print(index_of_world)

输出结果为:

1

12. 读写文件

使用open()函数可以读写文件,示例代码如下:

with open('filename.txt', 'r') as f:
    content = f.read()

with open('filename.txt', 'w') as f:
    f.write('hello, world!')

13. 将字符串转为日期格式

使用datetime模块中的strptime()函数可以将字符串转为日期格式,示例代码如下:

from datetime import datetime

date_string = '2022-12-31'
date_object = datetime.strptime(date_string, '%Y-%m-%d')
print(date_object)

输出结果为:

2022-12-31 00:00:00

14. 计算两个日期之间的天数

使用datetime模块中的date()函数和timedelta()函数可以计算两个日期之间的天数,示例代码如下:

from datetime import date, timedelta

start_date = date(2022, 6, 1)
end_date = date(2022, 6, 10)
num_of_days = (end_date - start_date).days
print(num_of_days)

输出结果为:

9

15. 将字典按照值排序

使用sorted()函数和lambda表达式可以将字典按照值排序,示例代码如下:

d = {"a": 3, "b": 1, "c": 2}
sorted_d = sorted(d.items(), key=lambda x: x[1])
print(sorted_d)

输出结果为:

[('b', 1), ('c', 2), ('a', 3)]

16. 将列表或字典转为JSON格式

使用json模块中的dumps()函数可以将列表或字典转为JSON格式,示例代码如下:

import json

data = {"name": "Tom", "age": 18}
json_str = json.dumps(data)
print(json_str)

输出结果为:

{"name": "Tom", "age": 18}

17. 将JSON格式转为列表或字典

使用json模块中的loads()函数可以将JSON格式转为列表或字典,示例代码如下:

import json

json_str = '{"name": "Tom", "age": 18}'
data = json.loads(json_str)
print(data)

输出结果为:

{'name': 'Tom', 'age': 18}

18. 将字符串转为全小写模式

使用lower()函数可以将字符串转为全小写模式,示例代码如下:

string = "HELLO WORLD"
lower_string = string.lower()
print(lower_string)

输出结果为:

hello world

19. 将字符串转为全大写模式

使用upper()函数可以将字符串转为全大写模式,示例代码如下:

string = "hello world"
upper_string = string.upper()
print(upper_string)

输出结果为:

HELLO WORLD

20. 判断一个字符串是否是数字

使用isdigit()函数可以判断一个字符串是否是数字,示例代码如下:

num_string = "123"
not_num_string = "hello"
if num_string.isdigit():
    print("num_string是数字")
else:
    print("num_string不是数字")

if not_num_string.isdigit():
    print("not_num_string是数字")
else:
    print("not_num_string不是数字")

输出结果为:

num_string是数字
not_num_string不是数字

21. 将列表翻转

使用reverse()函数可以将列表翻转,示例代码如下:

nums = [1, 2, 3, 4, 5]
nums.reverse()
print(nums)

输出结果为:

[5, 4, 3, 2, 1]

22. 判断文件是否存在

使用os.path模块中的exists()函数可以判断文件是否存在,示例代码如下:

import os.path

file_name = 'filename.txt'
if os.path.exists(file_name):
    print('文件存在')
else:
    print('文件不存在')

输出结果为:

文件存在

以上22个Python的万用公式分享,可以在日常编程中提高效率并减少出错的概率。