在线客服
扫描二维码
下载博学谷APP扫描二维码
关注博学谷微信公众号
如今,学习Python早已不仅仅是编程开发者的职业需求,而是成为人人都必须具备的一项基础技能。这其实是因为Python的强大实用性,使它几乎无所不能。那么,学习Python能实现哪些实际功能呢?下面我们就一起来看看,Python可以实现的一些有意思的实际功能。
1、批量修改文件后缀
本例子使用Python的os模块和argparse模块,将工作目录work_dir下所有后缀名为old_ext的文件修改为后缀名为new_ext。通过本例子,大家将会大概清楚argparse模块的主要用法。
导入模块
import argparse
import os
定义脚本参数
def get_parser():
parser = argparse.ArgumentParser(
description=' 工 作 目 录 中 文 件 后 缀 名 修 改 ') parser.add_argument('work_dir', metavar='WORK_DIR', type=str, nargs=1,
help='修改后缀名的文件目录')
parser.add_argument('old_ext', metavar='OLD_EXT',
type=str,nargs=1,help='原来的后缀)
parser.add_argument('new_ext', metavar='NEW_EXT',
type=str, nargs=1, help='新的后缀')
return parser
后缀名批量修改
def batch_rename(work_dir, old_ext, new_ext):
"""
传递当前目录,原来后缀名,新的后缀名后,批量重命名后缀
"""
for filename in os.listdir(work_dir):
# 获取得到文件后缀
split_file = os.path.splitext(filename)
file_ext = split_file[1]
# 定位后缀名为old_ext 的文件
if old_ext == file_ext:
# 修改后文件的完整名称
newfile = split_file[0] + new_ext
# 实现重命名操作
os.rename(
os.path.join(work_dir, filename), os.path.join(work_dir, newfile)
)
print(" 完 成 重 命 名 ")
print(os.listdir(work_dir))
实现Main
def main():
"""
main函数
"""
# 命令行参数
parser = get_parser()
args = vars(parser.parse_args())
# 从命令行参数中依次解析出参数
work_dir = args['work_dir'][0]
old_ext = args['old_ext'][0]
if old_ext[0] != '.':
old_ext = '.' + old_ext
new_ext = args['new_ext'][0]
if new_ext[0] != '.':
new_ext = '.' + new_ext
batch_rename(work_dir, old_ext, new_ext)
2、计算日期
#计算指定日期当月最后一天的日期和该月天数import datetime
import calendar
init_date = datetime.date.today()
print(' 当 前 给 定 时 间 :', init_date) current_month_days=calendar.monthrange(init_date.year,init_date.month)[1] print(calendar.month(2019,init_date.month))
current_month_last_day = datetime.date(init_date.year, init_date.month, current_month_days)
print("当月最后一天:",current_month_last_day)
print("该月天数:",current_month_days)
当前给定时间: 2019-12-08
December 2019
Mo Tu We Th Fr Sa Su
1
2 3 4 5 6 7 8
9 10 11 12 13 14 15
16 17 18 19 20 21 22
23 24 25 26 27 28 29
30 31
当月最后一天: 2019-12-31
该月天数: 31
3、批量压缩文件
import zipfile # 导入zipfile,这个是用来做压缩和解压的Python模块;
import os import time
def batch_zip(start_dir):
start_dir = start_dir # 要压缩的文件夹路径
file_news = start_dir + '.zip' # 压缩后文件夹的名字
z = zipfile.ZipFile(file_news, 'w', zipfile.ZIP_DEFLATED)
for dir_path, dir_names, file_names in os.walk(start_dir):
# 这一句很重要,不replace的话,就从根目录开始复制
f_path = dir_path.replace(start_dir, '')
f_path = f_path and f_path + os.sep # 实现当前文件夹以及包含的所有文件的压缩
for filename in file_names:
z.write(os.path.join(dir_path, filename), f_path + filename)
z.close()
return file_news
batch_zip('./data/ziptest')
4、turtle绘制奥运五环图
turtle绘图的函数非常好用,基本看到函数名字,就能知道它的含义,下面使用turtle,仅用15行代码来绘制奥运五环图。
(1)导入库
import turtle
(2)定义画圆函数
def drawCircle(x,y,c='red'):
p.pu()# 抬起画笔
p.goto(x,y) # 绘制圆的起始位置p.pd()# 放 下 画 笔p.color(c)# 绘制c色圆环p.circle(30,360) #绘制圆:半径,角度
(3)画笔基本设置
p = turtle
p.pensize(3) # 画笔尺寸设置3
(4)绘制五环图
调画圆函数
drawCircle(0,0,'blue')
drawCircle(60,0,'black')
drawCircle(120,0,'red')
drawCircle(90,-30,'green')
drawCircle(30,-30,'yellow')
p.done()
结果:
5、32位加密
import hashlib
# 对字符串s实现32位加密
def hash_cry32(s):
m = hashlib.md5()
m.update((str(s).encode('utf-8')))
return m.hexdigest()
print(hash_cry32(1)) # c4ca4238a0b923820dcc509a6f75849b
print(hash_cry32('hello')) # 5d41402abc4b2a76b9719d911017c592
当然,学习Python能实现的实际功能还有很多,碍于篇幅的限制,这里就不一一举例了。感兴趣的小伙伴,可以在博学谷官网自行学习Python的更多在线课程,掌握更多的实用技能,比如用爬虫技术爬取数据等等。
— 申请免费试学名额 —
在职想转行提升,担心学不会?根据个人情况规划学习路线,闯关式自适应学习模式保证学习效果
讲师一对一辅导,在线答疑解惑,指导就业!
相关推荐 更多
爬虫高端培训就业课程 python开发学习路线
爬虫高端培训就业课程 python开发学习路线分为八个阶段名主要学习爬虫基础、Python语法教学体验、课程项目体验——python高级语法、课程项目体验 -- numpy、matplotlib、Dajango
6614
2019-06-19 16:11:02
初学Python用什么编辑器?Python开发编辑工具推荐
对于初学Python小伙伴来讲,一款好用的编辑器可以让效率大大提高。本篇文章为大家整理了,目前最受Python新手喜爱的八大编辑工具,感兴趣的小伙伴赶紧来看看吧!
6111
2019-08-29 14:48:21
为什么人工智能和Python要一起学?两者有何联系?
为什么人工智能和Python要一起学?两者有何联系?相信现在只要提到人工智能,就难免会带上Python,可以说Python就是人工智能的首选编程语言,由此人工智能已经和Python已经紧密联系在一起了。本文就和大家说说Python和人工智能不可分割的关系。
5059
2019-09-19 11:35:46
学Python爬虫好找工作吗?要学到什么程度?
Python的火爆,同时也带动了Python爬虫岗位的的极大需求。可能有些人想问了,学Python爬虫真的好找工作吗?要学到什么程度?根据各大招聘网站的数据反馈,目前市场上对Python爬虫工程师的需求比较大。但是这并不意味着学习爬虫就好找工作了,除了熟练掌握Python爬虫技术,大家还需要许多知识,比如反爬机制、多进程、多线程爬虫等等。下面我们来详细看一看Python爬虫要学到什么程度。
5401
2019-12-02 15:19:17
Python初学者为什么要选择Jupyter?
相信学习过编程的你,对于编译器肯定是不陌生的,一定使用过 Pycharm、VScode 等知名 IDE 工具,但今天本文要讲解的并不是这些,而是一款在 IT 界享誉盛名的神级 Web 编辑器——Jupyter,那么,Python初学者为什么要选择Jupyter呢?简单来讲,它不用安装,不用激活,功能强大,方便迭代更新!下面我们一起来了解一下Jupyter的起源、核心特点以及优势。
8925
2020-08-18 11:46:59