Python中常用脚本集锦分享
目录
- 文件和目录管理
- 复制文件
- 移动文件
- 创建目录结构
- 删除空目录
- 查找大文件
- 检查文件是否存在
- 读取文件内容
- 写入文件内容
- 数据处理
- 读取 CSV 文件
- 写入 CSV 文件
- 读取 jsON 文件
- 写入 JSON 文件
- 过滤列表中的重复项
- 排序列表
- 网络请求与爬虫
- 获取网页内容
- 发送 HTTP POST 请求
- 处理 JSON 响应
- 下载图片
- 自动化任务
- 定时执行任务
- 发送电子邮件
- 统计单词数
- 替换字符串
- 连接字符串
- 格式化字符串
- 其他常见功能
- 生成随机数
- 生成随机密码
- 读取环境变量
- 运行系统命令
文件和目录管理
复制文件
import shutil # 复制源文件到目标文件 shutil.copy('source.txt', 'destination.txt')
移动文件
import shutil # 移动文件到新的路径 shutil.move(android'source.txt', 'destination.txt')
创建目录结构
import os # 创建多层目录,如果已经存在则不报错 os.makedirs('dir/subdir/subsubdir', exist_ok=True)
删除空目录
import os # 删除当前目录下的所有空目录 for root, dirs, files in os.walk('.', topdown=False): for name in dirs: dir_path = os.path.join(root, namjavascripte) if not os.listdir(dir_path): os.rmdir(dir_path)
查找大文件
import os # 查找当前目录及子目录下大于1MB的文件 for root, dirs, files in os.walk('.'): for name in files: if os.path.getsize(os.path.join(root, name)) > 1024 * 1024: print(os.path.join(root, name))
检查文件是否存在
import os # 检查指定文件是否存在 if os.path.ehttp://www.devze.comxists('file.txt'): print("File exists.") else: print("File does not exist.")
读取文件内容
with open('file.txt', 'r') as file: content = file.read()
写入文件内容
with open('file.txt', 'w') as file: file.write('Hello, World!')
数据处理
读取 CSV 文件
import csv # 读取 CSV 文件并打印每一行 with open('data.csv', 'r') as file: reader = csv.reader(file) for row in reader: print(row)
写入 CSV 文件
import csv # 写入数据到 CSV 文件 data = [['Name', 'Age'], ['Alice', 30], ['Bob', 25]] with open('data.csv', 'w', newline='') as file: writer = csv.writer(file) writer.writerows(data)
读取 JSON 文件
import json # 读取 JSON 文件 with open('data.json', 'r') as file: data = json.load(file)
写入 JSON 文件
import json # 将数据写入 JSON 文件 data = {'name': 'Alice', 'age': 30} with open('data.json', 'w') as file: json.dump(data, file)
过滤列表中的重复项
# 从列表中去除重复项 my_list = [1, 2, 2, 3, 4, 4, 5] unique_list = list(set(my_list))
排序列表
# 对列表进行排序 my_list = [3, 1, 4, 1, 5, 9, 2, 6, 5, 3, 5] sorted_list = sorted(my_ljsist)
网络请求与爬虫
获取网页内容
import requests # 发送 GET 请求并获取网页内容 response = requests.get('https://www.example.com') print(response.text)
发送 HTTP POST 请求
import requests # 发送 POST 请求并打印响应 payload = {'key1': 'value1', 'key2': 'value2'} response = requests.post('https://httpbin.org/post', data=payload) print(response.text)
处理 JSON 响应
import requests # 获取并解析 JSON 响应 response = requests.get('https://api.example.com/data') data = response.json() print(data)
下载图片
import requests # 下载并保存图片 img_data = requests.get('http://example.com/image.jpg').content with open('image.jpg', 'wb') as handler: handler.write(img_data)
自动化任务
定时执行任务
import schedule import time # 定义定时执行的任务 def job(): print("I'm working...") # 每10秒执行一次任务 schedule.every(10).seconds.do(job) while True: schedule.run_pending() time.sleep(1)
发送电子邮件
import smtplib from email.mime.text import MIMEText # 发送电子邮件 msg = MIMEText('Hello, this is a test email.') msg['Subject'] = 'Test Email' msg['From'] = 'your_email@example.com' msg['To'] = 'recipient@example.com' s = smtplib.SMTPphp('localhost') s.send_message(msg) s.quit()
统计单词数
# 统计字符串中的单词数 text = "This is a test. This is only a test." word_count = len(text.split()) print(f"Word count: {word_count}")
替换字符串
# 替换字符串中的子串 text = "Hello, World!" new_text = text.replace("World", "python") print(new_text)
连接字符串
# 将列表中的字符串连接为一个字符串 fruits = ['apple', 'banana', 'orange'] text = ', '.join(fruits) print(text)
格式化字符串
# 使用 f-string 格式化字符串 name = "Alice" age = 30 formatted_text = f"Name: {name}, Age: {age}" print(formatted_text)
其他常见功能
生成随机数
import random # 生成1到100之间的随机整数 random_number = random.randint(1, 100) print(random_number)
生成随机密码
import random import string # 生成随机密码 password = ''.join(random.choices(string.ascii_letters + string.digits, k=12)) print(password)
读取环境变量
import os # 读取指定环境变量 api_key = os.getenv('API_KEY') print(api_key)
运行系统命令
import subprocess # 运行系统命令并打印输出 result = subprocess.run(['ls', '-l'], stdout=subprocess.PIPE) print(result.stdout.decode('utf-8'))
以上就是Python中常用脚本集锦分享的详细内容,更多关于Python常用脚本的资料请关注编程客栈(www.devze.com)其它相关文章!
精彩评论