16个好用到爆的Python实用脚本!

以下是16个非常实用的Python脚本示例,每个脚本都有其特定的用途,并且我会附上相应的源码。这些脚本涵盖了数据处理、网络请求、文件操作等多个方面,非常适合初学者和进阶者学习和使用。
在这里插入图片描述

1. 批量重命名文件

import osdef batch_rename(folder_path, prefix):for filename in os.listdir(folder_path):old_file = os.path.join(folder_path, filename)new_file = os.path.join(folder_path, prefix + filename)os.rename(old_file, new_file)# 使用示例
folder_path = 'path/to/your/folder'
prefix = 'new_'
batch_rename(folder_path, prefix)

2. 发送HTTP GET请求

import requestsdef send_get_request(url):response = requests.get(url)return response.text# 使用示例
url = 'http://example.com'
print(send_get_request(url))

3. 读取CSV文件

import csvdef read_csv(file_path):with open(file_path, mode='r', encoding='utf-8') as file:csv_reader = csv.reader(file)for row in csv_reader:print(row)# 使用示例
file_path = 'path/to/your/file.csv'
read_csv(file_path)

4. 写入CSV文件

import csvdef write_csv(file_path, data):with open(file_path, mode='w', encoding='utf-8', newline='') as file:csv_writer = csv.writer(file)for row in data:csv_writer.writerow(row)# 使用示例
file_path = 'path/to/your/file.csv'
data = [['name', 'age'], ['Alice', 30], ['Bob', 25]]
write_csv(file_path, data)

5. 读取JSON文件

import jsondef read_json(file_path):with open(file_path, 'r', encoding='utf-8') as file:return json.load(file)# 使用示例
file_path = 'path/to/your/file.json'
data = read_json(file_path)
print(data)

6. 写入JSON文件

import jsondef write_json(file_path, data):with open(file_path, 'w', encoding='utf-8') as file:json.dump(data, file, ensure_ascii=False, indent=4)# 使用示例
file_path = 'path/to/your/file.json'
data = {'name': 'Alice', 'age': 30}
write_json(file_path, data)

7. 简单的网页爬虫

import requests
from bs4 import BeautifulSoupdef simple_web_crawler(url):response = requests.get(url)soup = BeautifulSoup(response.text, 'html.parser')titles = soup.find_all('title')for title in titles:print(title.text)# 使用示例
url = 'http://example.com'
simple_web_crawler(url)

8. 计算文件夹大小

import osdef calculate_folder_size(folder_path):total_size = 0for root, dirs, files in os.walk(folder_path):for file in files:file_path = os.path.join(root, file)total_size += os.path.getsize(file_path)return total_size# 使用示例
folder_path = 'path/to/your/folder'
print(f'Folder size: {calculate_folder_size(folder_path)} bytes')

9. 检查网站是否可访问

import requestsdef check_website_availability(url):try:response = requests.get(url)return response.status_code == 200except requests.ConnectionError:return False# 使用示例
url = 'http://example.com'
print(check_website_availability(url))

10. 简单的数据清洗(去除空格和换行符)

def clean_data(data):return [item.strip() for item in data if item.strip()]# 使用示例
data = [' Alice ', 'Bob\n', 'Charlie', '']
cleaned_data = clean_data(data)
print(cleaned_data)

11. 合并多个Excel文件

import pandas as pddef merge_excel_files(folder_path):merged_df = pd.DataFrame()for file in os.listdir(folder_path):if file.endswith('.xlsx'):file_path = os.path.join(folder_path, file)df = pd.read_excel(file_path)merged_df = pd.concat([merged_df, df], ignore_index=True)return merged_df# 使用示例
folder_path = 'path/to/your/excel/files'
merged_data = merge_excel_files(folder_path)
print(merged_data)

12. 提取PDF文件中的文本

import PyPDF2def extract_text_from_pdf(pdf_path):with open(pdf_path, 'rb') as file:pdf_reader = PyPDF2.PdfFileReader(file)text = ''for page_num in range(pdf_reader.numPages):page = pdf_reader.getPage(page_num)text += page.extractText()return text# 使用示例
pdf_path = 'path/to/your/file.pdf'
text = extract_text_from_pdf(pdf_path)
print(text)

13. 发送电子邮件

import smtplib
from email.mime.text import MIMEText
from email.mime.multipart import MIMEMultipartdef send_email(sender_email, receiver_email, password, subject, body):message = MIMEMultipart()message['From'] = sender_emailmessage['To'] = receiver_emailmessage['Subject'] = subjectmessage.attach(MIMEText(body, 'plain'))server = smtplib.SMTP('smtp.gmail.com', 587)server.starttls()server.login(sender_email, password)text = message.as_string()server.sendmail(sender_email, receiver_email, text)server.quit()# 使用示例
sender_email = 'your_email@gmail.com'
receiver_email = 'receiver_email@gmail.com'
password = 'your_password'
subject = 'Test Email'
body = 'This is a test email.'
send_email(sender_email, receiver_email, password, subject, body)

14. 简单的文本加密和解密(使用Base64)

import base64def encrypt_text(text):return base64.b64encode(text.encode()).decode()def decrypt_text(encrypted_text):return base64.b64decode(encrypted_text).decode()# 使用示例
text = 'Hello, World!'
encrypted_text = encrypt_text(text)
print(f'Encrypted: {encrypted_text}')
decrypted_text = decrypt_text(encrypted_text)
print(f'Decrypted: {decrypted_text}')

15. 生成随机密码

import random
import stringdef generate_password(length):characters = string.ascii_letters + string.digits + string.punctuationreturn ''.join(random.choice(characters) for i in range(length))# 使用示例
password_length = 12
password = generate_password(password_length)
print(password)

16. 检查密码强度

python
def check_password_strength(password):strength = 0if len(password) >= 8:strength += 1if any(char.isdigit() for char in

关于Python学习指南

学好 Python 不论是就业还是做副业赚钱都不错,但要学会 Python 还是要有一个学习规划。最后给大家分享一份全套的 Python 学习资料,给那些想学习 Python 的小伙伴们一点帮助!

包括:Python激活码+安装包、Python web开发,Python爬虫,Python数据分析,人工智能、自动化办公等学习教程。带你从零基础系统性的学好Python!
————————————————

在这里插入图片描述

**全套Python学习资料分享:
👉Python所有方向的学习路线👈

Python所有方向路线就是把Python常用的技术点做整理,形成各个领域的知识点汇总,它的用处就在于,你可以按照上面的知识点去找对应的学习资源,保证自己学得较为全面。(全套教程文末领取)

​​​​在这里插入图片描述

👉学习软件

在这里插入图片描述

👉全套PDF电子书

在这里插入图片描述

👉实战案例
在这里插入图片描述

👉Python副业兼职路线&方法👈
学好 Python 不论是就业还是做副业赚钱都不错,但要学会兼职接单还是要有一个学习规划。

在这里插入图片描述

👉 这份完整版的Python全套学习资料已经上传,朋友们如果需要可以扫描下方CSDN官方认证二维码或者点击链接免费领取保证100%免费

在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.rhkb.cn/news/393883.html

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

【Python】数据类型之集合

集合是一个无序、可变、不允许元素重复的容器。 1、定义 v1{11,22,33} 1))无序:集合无法通过索引取值。 2))可变:可以添加和删除集合中的元素。 3))集合不允许元素重复。 例如…

MySQL中常用工具

MySQL自带的系统数据库 常用工具 MySQL mysqladmin mysqlbinlog mysqldump mysqlimport/source mysqlimport只能导入文本文件,不能导入sql文件

C++分析红黑树

目录 红黑树介绍 红黑树的性质与平衡控制关系 红黑树节点的插入 情况1:不需要调整 情况2:uncle节点为红色 情况3:uncle节点为黑色 总结与代码实现 红黑树的删除(待实现) 红黑树的效率 红黑树介绍 红黑树是第二种平衡二…

提前批测开三面,已OC!

大家好,我是洋子 近期百度提前批已经开始有一段时间了,甚至已经有不少 25 届的同学 oc 了,这里分享一位已经顺利 oc 百度提前批测开岗位同学的三轮面试面经 整个三轮技术面试总体难度不高,但考察知识广度比较广,如果…

SQL注入:MySQL元数据库,外网实战手工SQL注入

MySQL元数据库 MySQL的元数据库是一组特殊的数据库,用于存储MySQL服务器的元数据信息,在sql注入中较为常用为以下两种元数据库: information_schema:这个数据库包含了MySQL服务器上所有其他数据库的元数据信息。例如数据库名、表…

AI人工智能为企业带来的优势及应用例子

自2022年知名大型语言模型及其他 AI 产品面世至今,无论商界、政府以至社会各界都逐渐关注人工智能的发展,并纷纷引入 AI 技术,全球正式踏入人工智能的新纪元。根据 Statista 一份有关全球人工智能软件的数据研究,至2025年预测各国…

Pytorch基础模型,数据加载,优化算法

目录 一.nn.Module 二.优化器类 三.损失函数 四.在GPU上运行代码 五.常见的优化算法 1.梯度下降算法 2.动量法: 3.AdaGrad 4.RMSProp 六.Pytorch中的数据加载 1.数据集类 2.迭代数据集 2.Pytorch自带的数据集 一.nn.Module nn.Modul是torch.nn提供的一个…

趋动科技荣登「AIGC赋能金融创新引领者TOP20」

2023年11月28日,“极新AIGC行业峰会”在北京召开,峰会以“AI落地”为指引,探究AI实践与产业化。 从制造业到金融服务业,从医疗保健到交通运输,从文化娱乐到消费零售,智能客服、数字人直播、智能巡检机器人&…

vue前端项目--路由vue-router

1. 路由介绍 我们可以总结一下从早期网站开发到现代单页应用(SPA)的发展过程及其关键概念: 早期的服务器端渲染 (SSR): 早期的网站开发中,服务器负责生成完整的 HTML 页面,并将其发送给客户端展示。 每个 URL 对应一个特定的控制器(Control…

基于CUDA12.1+CUDNN8.9+PYTORCH2.3.1,实现自定义数据集训练

目录 0 结果预览 1 核心点 2 参考链接 0 结果预览 1 核心点 yolo命令行CL需要将虚拟环境的yolo程序加入系统路径。 遇到conda install 失效问题,重建新的虚拟环境,再进行安装。 whl可以下载好后再安装。 pip install F:\tool\ai\torch-2.3.1cu…

leetcode日记(64)最小覆盖子串

很复杂的题目,无论是思路还是实践都很难… 思路还是看了答案(?)设定两个指针“框”出一串字符串,初始两个指针都指在s的零位,先移动下指针,直到使框出的字符串中包含t中所有字符串,…

JDK17安装与配置

为了学习spring boot3.x,首先确保本地安装了17以上的jdk版本。 安装版本:jdk-17.0.10_windows-x64_bin.exe 傻瓜式安装,步骤省略,这里设置的安装位置:D:\Programs\Java\jdk-17 JAVA_HOME环境变量配置: #…

容器七层负载均衡解决方案——IngressNGINX

一、概述 当我们使用 K8S 对容器进行编排时,基于负载均衡和高可用方面考虑,且设计上 Pod 易失态,不能直接使用 PodIP 作为外部访问的方式。因此,K8S 官方提供了一些负载均衡的解决方案。这其中有四层和七层两种,本文主…

养猫必看!热销猫罐头有哪些?2024年推荐这4款口碑很好的主食罐

开猫咖3年啦,店里有加菲,美短,布偶,暹罗,都是我一手带大的。店铺开在高校附近,顾客以学生为主,也有很多养猫人士会到店里来,和我交流选粮经验。很多养猫人都在喂主食罐头&#xff0c…

FreeRTOS基础入门——FreeRTOS的任务基础知识(四)

个人名片: 🎓作者简介:嵌入式领域优质创作者🌐个人主页:妄北y 📞个人QQ:2061314755 💌个人邮箱:[mailto:2061314755qq.com] 📱个人微信:Vir2025WB…

Leetcode每日刷题之字符串相加(C++)

在学习的同时也不要忘记适当练习,本题字符串相加主要在于字符串类型与整数类型的转化,要将字符串类型转化为整数类型计算后转化为字符串类型输出即可。 思路解析 根据题中给出的信息,我们不可以使用库函数计算大整数,也不能直接将…

做空日经指数的策略与时机

一、市场背景分析 在全球股市的剧烈波动中,日本股市的表现尤为引人关注。日经225指数在经历一轮暴跌后,又出现了大幅反弹,这种剧烈的波动为投资者提供了做空日经指数的机会。近期,日本股市受到日元汇率波动、日本央行货币政策以及…

C++中的string的介绍(从string到STL)

C中的string的介绍 文章目录 C中的string的介绍1. 从string到STL2. string 的构造函数3. string 的iterator(迭代器)4. string 中的元素访问5. string 中容量相关6. string 中的插入删除7. string 中的查找8. string 的剩余函数 1. 从string到STL 严格来…

【轻松拿捏】Java是如何实现跨平台性的?

Java是如何实现跨平台性的? 一、Java 的跨平台性主要通过以下几个核心机制实现: 二、具体实现 三、示例 四、JVM 工作示意图 五、总结 🎈边走、边悟🎈迟早会好 一、Java 的跨平台性主要通过以下几个核心机制实现&#xff…

CICD流水线

一、CICD流水线简介 CICD概念 CI/CD流水线是现代软件开发的一个核心概念,它涉及自动化和管理软件从开发到部署的整个生命周期 概念定义 具体有三点:持续集成、持续交付、持续部署 流水线组成为:代码提交、测试、构建、部署、结果通知 二…