PYTHON基础技能 – Python提升工作效率的7个实用秘籍

释放双眼,带上耳机,听听看~!

秘籍一:自动化文件操作

处理大量的文件时,手动操作不仅耗时还容易出错。Python可以帮你自动完成这些任务。

示例:批量重命名文件


1
import&nbsp;os<br><br>def&nbsp;rename_files(directory,&nbsp;prefix):<br>&nbsp;&nbsp;&nbsp;&nbsp;"""<br>&nbsp;&nbsp;&nbsp;&nbsp;批量重命名目录下的所有文件。<br>&nbsp;&nbsp;&nbsp;&nbsp;:param&nbsp;directory:&nbsp;文件夹路径<br>&nbsp;&nbsp;&nbsp;&nbsp;:param&nbsp;prefix:&nbsp;新的文件名前缀<br>&nbsp;&nbsp;&nbsp;&nbsp;"""<br>&nbsp;&nbsp;&nbsp;&nbsp;files&nbsp;=&nbsp;os.listdir(directory)<br>&nbsp;&nbsp;&nbsp;&nbsp;for&nbsp;file&nbsp;in&nbsp;files:<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;ext&nbsp;=&nbsp;os.path.splitext(file)&#091;1]<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;new_name&nbsp;=&nbsp;f"{prefix}_{file}"<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;old_path&nbsp;=&nbsp;os.path.join(directory,&nbsp;file)<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;new_path&nbsp;=&nbsp;os.path.join(directory,&nbsp;new_name)<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;os.rename(old_path,&nbsp;new_path)<br><br><em>#&nbsp;使用示例</em><br>rename_files("path/to/your/directory",&nbsp;"new_prefix")

代码解释:这段代码定义了一个

1
rename_files

函数,它接收两个参数——文件夹路径和新的文件名前缀。函数首先获取指定目录下所有文件的列表,然后遍历每个文件,生成一个新的文件名,并使用

1
os.rename()

函数重命名文件。

秘籍二:高效的数据处理

Python中的Pandas库是处理表格数据的强大工具。学会使用它,能极大提高数据分析效率。

示例:清洗和分析CSV数据


1
import&nbsp;pandas&nbsp;as&nbsp;pd<br><br>def&nbsp;clean_data(file_path):<br>&nbsp;&nbsp;&nbsp;&nbsp;"""<br>&nbsp;&nbsp;&nbsp;&nbsp;清洗并分析CSV文件中的数据。<br>&nbsp;&nbsp;&nbsp;&nbsp;:param&nbsp;file_path:&nbsp;CSV文件路径<br>&nbsp;&nbsp;&nbsp;&nbsp;"""<br>&nbsp;&nbsp;&nbsp;&nbsp;df&nbsp;=&nbsp;pd.read_csv(file_path)<br>&nbsp;&nbsp;&nbsp;&nbsp;df.dropna(inplace=True)<br>&nbsp;&nbsp;&nbsp;&nbsp;print(df.head())<br>&nbsp;&nbsp;&nbsp;&nbsp;print(df.describe())<br><br><em>#&nbsp;使用示例</em><br>clean_data("path/to/your/data.csv")

输出结果


1
&nbsp;&nbsp;&nbsp;ColumnA&nbsp;&nbsp;ColumnB<br>0&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;10&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;20<br>1&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;30&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;40<br>2&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;50&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;60<br>3&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;70&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;80<br>4&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;90&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;100<br><br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;ColumnA&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;ColumnB<br>count&nbsp;&nbsp;4.000000e+00&nbsp;&nbsp;4.000000e+00<br>mean&nbsp;&nbsp;&nbsp;5.000000e+01&nbsp;&nbsp;5.000000e+01<br>std&nbsp;&nbsp;&nbsp;&nbsp;2.969848e+01&nbsp;&nbsp;2.969848e+01<br>min&nbsp;&nbsp;&nbsp;&nbsp;1.000000e+01&nbsp;&nbsp;2.000000e+01<br>25%&nbsp;&nbsp;&nbsp;&nbsp;3.000000e+01&nbsp;&nbsp;4.000000e+01<br>50%&nbsp;&nbsp;&nbsp;&nbsp;5.000000e+01&nbsp;&nbsp;6.000000e+01<br>75%&nbsp;&nbsp;&nbsp;&nbsp;7.000000e+01&nbsp;&nbsp;8.000000e+01<br>max&nbsp;&nbsp;&nbsp;&nbsp;9.000000e+01&nbsp;&nbsp;1.000000e+02

代码解释:这里我们使用Pandas库读取了一个CSV文件,并删除了其中含有空值的行。接着打印了数据框的前几行以及描述性统计信息,帮助我们快速了解数据的基本情况。

秘籍三:文本处理利器 —— 正则表达式

正则表达式(Regular Expression)是一种强大的文本匹配工具,可以帮助我们快速处理文本数据。无论是查找特定模式的字符串,还是替换某些内容,正则表达式都是一个不可或缺的工具。

示例:提取邮箱地址


1
import&nbsp;re<br><br>def&nbsp;extract_emails(text):<br>&nbsp;&nbsp;&nbsp;&nbsp;"""<br>&nbsp;&nbsp;&nbsp;&nbsp;从文本中提取所有邮箱地址。<br>&nbsp;&nbsp;&nbsp;&nbsp;:param&nbsp;text:&nbsp;待处理的文本<br>&nbsp;&nbsp;&nbsp;&nbsp;:return:&nbsp;匹配到的所有邮箱地址列表<br>&nbsp;&nbsp;&nbsp;&nbsp;"""<br>&nbsp;&nbsp;&nbsp;&nbsp;pattern&nbsp;=&nbsp;r'\b&#091;A-Za-z0-9._%+-]+@&#091;A-Za-z0-9.-]+\.&#091;A-Z|a-z]{2,}\b'<br>&nbsp;&nbsp;&nbsp;&nbsp;emails&nbsp;=&nbsp;re.findall(pattern,&nbsp;text)<br>&nbsp;&nbsp;&nbsp;&nbsp;return&nbsp;emails<br><br><em>#&nbsp;示例文本</em><br>text&nbsp;=&nbsp;"""<br>Hello,&nbsp;my&nbsp;email&nbsp;is&nbsp;example@example.com&nbsp;and&nbsp;another&nbsp;one&nbsp;is&nbsp;test@example.org.<br>Feel&nbsp;free&nbsp;to&nbsp;contact&nbsp;me&nbsp;at&nbsp;john.doe@gmail.com.<br>"""<br><br><em>#&nbsp;提取邮箱地址</em><br>emails&nbsp;=&nbsp;extract_emails(text)<br>print(emails)

输出结果


1
&#091;'example@example.com',&nbsp;'test@example.org',&nbsp;'john.doe@gmail.com']

代码解释:这段代码定义了一个

1
extract_emails

函数,用于从给定文本中提取所有符合邮箱格式的字符串。我们使用了正则表达式

1
r'\b[A-Za-z0-9._%+-]+@[A-Za-z0-9.-]+\.[A-Z|a-z]{2,}\b'

来匹配邮箱地址,并通过

1
re.findall()

函数返回所有匹配的结果。

秘籍四:自动化Excel操作

在工作中,我们经常需要处理Excel表格。使用Python的

1
openpyxl

库,我们可以轻松地读取、修改和创建Excel文件。

示例:读取并修改Excel表格


1
from&nbsp;openpyxl&nbsp;import&nbsp;load_workbook<br><br>def&nbsp;modify_excel(file_path):<br>&nbsp;&nbsp;&nbsp;&nbsp;"""<br>&nbsp;&nbsp;&nbsp;&nbsp;读取并修改Excel文件。<br>&nbsp;&nbsp;&nbsp;&nbsp;:param&nbsp;file_path:&nbsp;Excel文件路径<br>&nbsp;&nbsp;&nbsp;&nbsp;"""<br>&nbsp;&nbsp;&nbsp;&nbsp;wb&nbsp;=&nbsp;load_workbook(file_path)<br>&nbsp;&nbsp;&nbsp;&nbsp;ws&nbsp;=&nbsp;wb.active<br>&nbsp;&nbsp;&nbsp;&nbsp;ws&#091;'A1']&nbsp;=&nbsp;'Hello,&nbsp;Python!'<br>&nbsp;&nbsp;&nbsp;&nbsp;wb.save(file_path)<br><br><em>#&nbsp;使用示例</em><br>modify_excel('path/to/your/excel.xlsx')

代码解释:这段代码定义了一个

1
modify_excel

函数,用于读取并修改Excel文件。我们首先使用

1
load_workbook()

函数加载指定路径的Excel文件,然后选择第一个工作表(默认为活动工作表),修改A1单元格的内容,并将修改后的工作簿保存回原文件。

秘籍五:Web自动化爬虫

很多时候我们需要从网页上抓取数据。Python的

1
requests

1
BeautifulSoup

库可以帮助我们轻松实现这一目标。

示例:爬取网页内容


1
import&nbsp;requests<br>from&nbsp;bs4&nbsp;import&nbsp;BeautifulSoup<br><br>def&nbsp;web_scraping(url):<br>&nbsp;&nbsp;&nbsp;&nbsp;"""<br>&nbsp;&nbsp;&nbsp;&nbsp;爬取指定URL的网页内容。<br>&nbsp;&nbsp;&nbsp;&nbsp;:param&nbsp;url:&nbsp;目标网页的URL<br>&nbsp;&nbsp;&nbsp;&nbsp;:return:&nbsp;解析后的HTML内容<br>&nbsp;&nbsp;&nbsp;&nbsp;"""<br>&nbsp;&nbsp;&nbsp;&nbsp;response&nbsp;=&nbsp;requests.get(url)<br>&nbsp;&nbsp;&nbsp;&nbsp;soup&nbsp;=&nbsp;BeautifulSoup(response.text,&nbsp;'html.parser')<br>&nbsp;&nbsp;&nbsp;&nbsp;title&nbsp;=&nbsp;soup.title.string<br>&nbsp;&nbsp;&nbsp;&nbsp;return&nbsp;title<br><br><em>#&nbsp;使用示例</em><br>url&nbsp;=&nbsp;'https://www.example.com'<br>title&nbsp;=&nbsp;web_scraping(url)<br>print(title)

输出结果


1
Example&nbsp;Domain

代码解释:这段代码定义了一个

1
web_scraping

函数,用于爬取指定URL的网页内容。我们使用

1
requests.get()

发送HTTP请求,然后使用

1
BeautifulSoup

解析返回的HTML内容。最后提取页面的标题并返回。

秘籍六:自动化邮件发送

在工作中,我们常常需要发送一些报告或通知。Python的

1
smtplib

库可以让我们轻松实现自动化邮件发送。

示例:发送邮件


1
import&nbsp;smtplib<br>from&nbsp;email.mime.text&nbsp;import&nbsp;MIMEText<br><br>def&nbsp;send_email(subject,&nbsp;body,&nbsp;recipient):<br>&nbsp;&nbsp;&nbsp;&nbsp;"""<br>&nbsp;&nbsp;&nbsp;&nbsp;发送邮件。<br>&nbsp;&nbsp;&nbsp;&nbsp;:param&nbsp;subject:&nbsp;邮件主题<br>&nbsp;&nbsp;&nbsp;&nbsp;:param&nbsp;body:&nbsp;邮件正文<br>&nbsp;&nbsp;&nbsp;&nbsp;:param&nbsp;recipient:&nbsp;收件人邮箱地址<br>&nbsp;&nbsp;&nbsp;&nbsp;"""<br>&nbsp;&nbsp;&nbsp;&nbsp;server&nbsp;=&nbsp;smtplib.SMTP('smtp.example.com',&nbsp;587)<br>&nbsp;&nbsp;&nbsp;&nbsp;server.starttls()<br>&nbsp;&nbsp;&nbsp;&nbsp;server.login('your_username',&nbsp;'your_password')<br>&nbsp;&nbsp;&nbsp;&nbsp;msg&nbsp;=&nbsp;MIMEText(body)<br>&nbsp;&nbsp;&nbsp;&nbsp;msg&#091;'Subject']&nbsp;=&nbsp;subject<br>&nbsp;&nbsp;&nbsp;&nbsp;msg&#091;'From']&nbsp;=&nbsp;'your_username@example.com'<br>&nbsp;&nbsp;&nbsp;&nbsp;msg&#091;'To']&nbsp;=&nbsp;recipient<br>&nbsp;&nbsp;&nbsp;&nbsp;server.sendmail('your_username@example.com',&nbsp;&#091;recipient],&nbsp;msg.as_string())<br>&nbsp;&nbsp;&nbsp;&nbsp;server.quit()<br><br><em>#&nbsp;使用示例</em><br>send_email('Hello&nbsp;from&nbsp;Python!',&nbsp;'This&nbsp;is&nbsp;a&nbsp;test&nbsp;email.',&nbsp;'recipient@example.com')

代码解释:这段代码定义了一个

1
send_email

函数,用于发送邮件。我们首先创建一个SMTP连接,并使用

1
starttls()

1
login()

方法进行安全认证。接着创建一个邮件对象,设置邮件的主题、发件人和收件人,最后使用

1
sendmail()

方法发送邮件,并关闭连接。

以上就是今天的六个秘籍。通过这些技巧,我们可以看到Python在提高工作效率方面的巨大潜力。希望这些方法能够帮助你在日常工作中更加高效地完成任务。敬请期待更多实用技巧!

给TA打赏
共{{data.count}}人
人已打赏
安全运维

安全运维之道:发现、解决问题的有效闭环

2024-4-14 20:59:36

安全运维

稳定性建设 – 架构优化的关键策略

2025-2-11 17:15:56

个人中心
购物车
优惠劵
今日签到
有新私信 私信列表
搜索