Python收集小模块

1.当前目录内容 “./” os.waik("./")

文件夹内所有文件
[语法] for 路径,目录名,文件名 in os.walk("./")

# --*coding:utf-8*--
import os
print(os.walk("./"))
for 路径,目录,文件 in  os.walk("./"):
    print(路径)
    print(目录)
    print(文件)
"""-------输出----------"""
<generator object _walk at 0x0000000001224900>
./
[]
['0000.py', '001 面向对象 洗衣机.py', '002 面向对象 烤地瓜.py']

2. 带路径 改名

os.rename(路径+"/"+文件.name,新名字)

for 路径,目录名,文件s in  os.walk("./"):  # 当前目录
	for 文件 in os.scandir(路径):
		os.rename(路径+"/"+文件.name,新名字)

3. 一个文件夹 复制到另一个文件夹 shutil.copytree

#--*coding:utf-8*--
import os
import shutil
path="D:"
os.chdir(path)

if os.path.exists("新建文件测试"):
    shutil.rmtree("新建文件测试")
shutil.copytree("新建文件夹","新建文件测试")

4. 文件创建日期

os.stat(路径 + “/” + 文件名)和 文件名.stat().

for 路径, 目录名, 文件s in os.walk("./") :  # 当前目录
	for 文件名 in 文件s :
		文件创建日期 = datetime.fromtimestamp(os.stat(路径 + "/" + 文件名).st_mtime).date()
print(文件名)       #简要说明.txt
for 路径, 目录名, 文件s in os.walk("./") :  # 当前目录
	for 文件名 in os.scandir(路径) :
		文件创建时间 = datetime.fromtimestamp(文件名.stat().st_mtime).date()
print(文件名)             #<DirEntry '简要说明.txt'>
print()文件名.name) #

==总结下: ==

4.1 时差

import os
from datetime import datetime

文件创建日期 = datetime.fromtimestamp(os.stat(路径 + "/" + 文件名).st_mtime).date()
        现在日期 = datetime.today().date()
        时差 = (现在日期 - 文件创建日期).days
    print(文件名, 文件创建日期, 现在日期, 时差)
    if 时差 > 1000 and "png" in 文件名 :
        print(文件名, 文件创建日期, 现在日期, 时差)
        # 重命名
        新名字 = f"{文件创建日期}_{文件名}"
        os.rename(路径 + "/" + 文件名, 路径 + "/" + 新名字) 

5. 移动文件

import os
import shutil  # 用于 移动等

            # 移动文件
            if not os.path.exists("长期不用文件") :
                os.mkdir("长期不用文件")
            try :
                shutil.move(路径 + "/" + 新名字, "长期不用文件/")
            except KeyError:
                continue
            except OSError:
                continue


6.压缩 zip

import os
import zipfile  #

path = "D:\新建文件测试\长期不用文件"
os.chdir(path)
list = os.listdir(path)
for file in list :
    with zipfile.ZipFile("长期不用文件.zip", "a") as zip :
        zip.write(file)
zip.close()

7. 以什么结尾 file.endswith(“exe”)

8. 取括号里面的文字

str="我爱你(不信),哈哈"
括号里的文字=str.split("(")[0].split(")")[-1]
print(括号里的文字)
我爱你

9 获取 json数据

	import requests  #最简单易用的HTTP库,建议爬虫使用requests
	
	hero_list_url="https://pvp.qq.com/web201605/js/herolist.json"
	# 发送get请求 获取数据
	hero_list=requests.get(hero_list_url)
	# 将获取json数据
	hero_list_json=hero_list.json()
	# 挖掘 json里面的数据
	for 英雄信息 in hero_list_json: # 英雄信息 {'ename': 508, 'cname': '伽罗'...}
	    英雄名字=英雄信息["cname"]
	    英雄编号=英雄信息["ename"] 
	    # 获取该英雄的皮肤名称列表  如何能找到skin_name 那么皮肤列表就是  否则 为[]
   		 皮肤列表=英雄信息.get("skin_name").split("|")if 英雄信息.get("skin_name") else []

10 if else 的另一种表达方式

皮肤列表=英雄信息.get(“skin_name”).split("|")if 英雄信息.get(“skin_name”) else []

	获取该英雄的皮肤名称列表  如何能找到skin_name 那么皮肤列表就是  否则 为[]

11 文件储存


import os.path
import random
import time
import requests  #最简单易用的HTTP库,建议爬虫使用requests

图片路径名字=os.path.join(储存目录,f"{英雄名字}-{皮肤名字}.jpg")
 with open(图片路径名字,"wb") as f:
                f.write(服务器响应状态.content)

12 服务器响应状态

 图片地址=f"https://game.gtimg.cn/images/yxzj/img201606/heroimg/{英雄编号}/{英雄编号}-smallskin-{图片号}.jpg"
        服务器响应状态=requests.get(图片地址)  #服务器响应状态 200正常 404页面未找到

13 requests.content requests.text

f.write(服务器响应状态.content) # 二进制编码的

14 文件搜索 快速收缩 pathlib 路径.rglob(".")

#1 导入 模块
from pathlib import Path
#2 导入路径
路径="d:"
#3 装载 
路径=Path(路径)
#4 文件列表
文件列表=list(路径.rgolb("*.*"))
#5 遍历列表
 for 文件 in 文件列表:
  	print(文件,文件.name)

输出 仅 文件
D:\新建文件测试\MAIN.BAK MAIN.BAK
要输出文件夹 区别是 . 和 **
文件列表=list(路径.rgolb("**"))

(glob.glob("/**/*",recursive=True)) 是带路径的 ,要只显示文件 ,还有split(".")[-1]

15 文件名的两种方式

import glob
import os
from pathlib import Path

路径=“d:\新建文件测试”
os.chdir(路径)

“”“glob.glob”""
文件列表=list(glob.glob("/**/*",recursive=True))
for 文件 in 文件列表:
# print(文件)
if “.” in 文件:

    if  "\\" in 文件:
        # print(文件)
        print(文件.split("\\")[-1]) #文件名
        # print(文件.split("\\")[-1].split(".")[0]) #文件名
        # 输出 LoadDrv_x64.exe
        # 输出 mfc80.dll

“”“rglob”""
路径=Path(路径)
文件列表=list(路径.rglob("."))
for 文件 in 文件列表:
print(文件.name)
# 输出 LoadDrv_x64.exe
# 输出 mfc80.dll

16 文件夹是否存在

方式一

import os
if not os.path.exists("d:\aaa"):
	os.mkdir("d:\aaa")

方式二

 from pathlib import Path
 文件夹=Path("d:\aaa")
 if not 文件夹.exists():
 	文件夹.mldir()

17 plt.hist 直方图 显示汉字

画出直方图

plt.rcParams[“font.sans-serif”]=[“SimHei”] # 显示汉字
plt.title(“柱状图”)
plt.xlabel(“像素数”)
plt.ylabel(“亮度”)

plt.hist(柱状图.ravel(),256)
plt.show()

plt.hist() 直方图

plt.imshow() 图片

plt.show() 列表图片 plt.subplot()

两位小数

format(5.66667,".2f")
format(float(random.uniform(5,20)),".2f")

查找表格中的单元格

for i in 价格_up_list :
    print(i.split(":")[0])
    for cell in ws.values :
        if i == cell :
            print(cell[1])
print(价格_up_list[1].split(":")[1])

for in 索引和值

for 序号,名称 in enumerate(名称_list):
    print(序号,名称)
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值