15个最近才知道的Python实用操作

  • Post category:Python

下面我就为您详细讲解“15个最近才知道的Python实用操作”的完整攻略。

15个最近才知道的Python实用操作

1. 在列表中查找元素

my_list = [1, 2, 3, 4, 5]
if any(i > 3 for i in my_list):
  print("找到了!")

使用any方法可以遍历列表中的元素,并判断其中是否存在一个元素满足特定的条件。如果存在,any方法就会返回True,否则返回False

2. 将列表分组

from itertools import zip_longest

my_list = ['apple', 'banana', 'cherry', 'dates', 'eggfruit', 'fig']
n = 3

groups = zip_longest(*(iter(my_list),) * n)

result = list(filter(lambda x: x is not None, groups))

print(result)

可以使用zip_longest将一个列表分成n组。上述示例中将一个长度为6的列表按照每3个一组进行分组。

3. 获取字符串中的数字

import re

my_string = "hello12345world"
result = re.findall(r'\d+', my_string)

print(result)

可以使用正则表达式r'\d+'从字符串中提取数字。

4. 翻转字符串

my_string = "hello world"
result = my_string[::-1]
print(result)

可以使用切片的方式将一个字符串进行翻转。

5. 按照字典序对列表排序

my_list = ['car', 'apple', 'banana', 'dog', 'cat']
result = sorted(my_list)
print(result)

可以使用sorted方法将一个列表按照字典序排序。

6. 列表元素去重

my_list = ['apple', 'banana', 'apple', 'cherry']
result = list(set(my_list))
print(result)

可以使用listset将一个列表中的元素进行去重。

7. 合并两个字典

dict1 = {'apple': 1, 'banana': 2, 'cherry': 3}
dict2 = {'dog': 4, 'cat': 5}

result = {**dict1, **dict2}
print(result)

可以使用**运算符将两个字典进行合并。

8. 将一个字符串转换为字典

import ast

my_string = "{'apple': 1, 'banana': 2, 'cherry': 3}"

result = ast.literal_eval(my_string)
print(result)

可以使用ast.literal_eval将一个字符串转换为字典。

9. 判断两个列表是否有交集

list1 = [1, 2, 3, 4, 5]
list2 = [4, 5, 6, 7]

result = any(i in list1 for i in list2)
print(result)

可以使用any判断两个列表是否有交集。

10. 判断一个字符串是否可以转换为数字

my_string = "12345"

result = my_string.isdigit()
print(result)

可以使用isdigit判断一个字符串是否只包含数字。

11. 在循环中使用else语句

my_list = [1, 2, 3, 4, 5]

for i in my_list:
  if i == 6:
    break
else:
  print("没有找到")

使用在循环中使用else语句可以在循环结束后执行一些操作。

12. 字典解析

my_list = ['apple', 'banana', 'cherry']
my_dict = {key: value for value, key in enumerate(my_list)}

print(my_dict)

可以使用字典解析快速创建一个字典。

13. 多线程

import threading

def task():
  print("执行中...")

threads = []

for i in range(5):
  t = threading.Thread(target=task)
  threads.append(t)
  t.start()

for t in threads:
  t.join()

使用多线程可以并发执行多个任务。

14. 读取文件

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

print(content)

可以使用with...open语句来打开并读取文件。

15. 写入文件

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

可以使用with...open语句来打开并写入文件。

希望我的回答能够帮助到您,如果还有什么问题,欢迎随时问我哦!