python3 基本用法
python3 基本用法
1. Python3的格式化输出
使用str.format()方法。 for x in range(1, 11): print('{0:2d} {1:3d} {2:4d}'.format(x, x*x, x*x*x)) print("\n {:-^120}".format("setup Test Test")) print("\n {:-^120}".format("Start Test Time:" + start_time))
2. 删除文件与目录的方法
os.remove(file_path) # 删除文件, file_path如果是目录则抛出异常, remove() 同 unlink()的功能是一样的 os.removedirs(path) # 递归删除目录 目录必须为空目录,若目录被删除,removedirs则会继续删除父目录;子目录未删除成功则报错 例子: os.removedirs(“foo/bar/ba”) 将首先删除 “foo/bar/ba”目录,如果foo/bar是空,则会继续 删除foo/bar,foo若为空则会继续删除foo 如果子目录不能成功删除,将 抛出异常 os.rmdir(path):删除目录 删除目录 path,要求path必须是个空目录,否则抛出OSError错误 递归删除目录和文件 通过shutil.rmtree(path)删除: 通过os.walk方法删除: for root, dirs, files in os.walk(obj_dir, topdown=False): for name in files: print(name) os.remove(os.path.join(root, name)) for name in dirs: print(name) os.rmdir(os.path.join(root, name))
3. python3 日期时间处理
python3 日期时间
import time start_time = time.strftime("%Y-%m-%d %H:%M:%S", time.localtime())
4. python3 代码格式化
black号称不妥协的代码格式化工具,为什么叫不妥协呢?因为它检测到不符合规范的代码风格直接就帮你全部格式化好,根本不需要你确定,直接替你做好决定。它也是 requests 作者最喜欢的工具之一.使用非常简单,安装成功后,和其他系统命令一样使用,只需在 black 命令后面指定需要格式化的文件或者目录就ok。
这是一款小而美的工具,它并不是完全按照 PEP8 规范来格式化,比如默认每行代码的字符数是88个,当然你可以通过参数 -l 自定义长度,能一行显示完成的代码会放在一行,比如有多个元素的列表.后者把多个元素放在一行,显然更易读,而且代码更紧凑(如果你的工资是按照代码行数来算的话,不建议这么做),Black 是 PEP8 的严格子集。
pip3 install --user black git status -s | awk '{print $2}' | grep ".py$" | xargs ~/.local/bin/black -l 120 ~/.local/bin/black -l 120 XXX_test.py
5. python3 好用的日志模块
python3中超级好用的日志模块-loguru
Python3 日志(内置logging模块)
6. python3 判断文件是否存在
使用os模块 判断文件是否存在 import os os.path.exists(test_file.txt) #True os.path.exists(no_exist_file.txt) #False 判断文件夹是否存在 import os os.path.exists(test_dir) #True os.path.exists(no_exist_dir) #False 可以看出用os.path.exists()方法,判断文件和文件夹是一样。 只检查文件 import os os.path.isfile("test-data") 判断文件是否可做读写操作 使用os.access()方法判断文件是否可进行读写操作。 语法: os.access(path, mode) path为文件路径,mode为操作模式,有这么几种: os.F_OK: 检查文件是否存在; os.R_OK: 检查文件是否可读; os.W_OK: 检查文件是否可以写入; os.X_OK: 检查文件是否可以执行 该方法通过判断文件路径是否存在和各种访问模式的权限返回True或者False。 import os if os.access("/file/path/foo.txt", os.F_OK): print "Given file path is exist." 使用Try语句 直接使用open()方法来检查文件是否存在和可读写 可以在程序中直接使用open()方法来检查文件是否存在和可读写。 语法: open() 如果你open的文件不存在,程序会抛出错误,使用try语句来捕获这个错误。 程序无法访问文件,可能有很多原因: 如果你open的文件不存在,将抛出一个FileNotFoundError的异常; 文件存在,但是没有权限访问,会抛出一个PersmissionError的异常。 所以可以使用下面的代码来判断文件是否存在: try: f =open() f.close() except FileNotFoundError: print "File is not found." except PermissionError: print "You don't have permission to access this file." 使用pathlib模块 pathlib模块在Python3版本中是内建模块,但是在Python2中是需要单独安装三方模块。 使用pathlib需要先使用文件路径来创建path对象。此路径可以是文件名或目录路径。 检查路径是否存在 path = pathlib.Path("path/file") path.exist() 检查路径是否是文件 path = pathlib.Path("path/file") path.is_file()
7. python3 参数解析
https://www.cnblogs.com/zjuhaohaoxuexi/p/16726809.html
https://docs.python.org/zh-cn/3/library/argparse.html
https://cs.pynote.net/sf/python/202208222/
8. python3 处理路径问题
方法比较
方法 | 返回值 | 适用场景 |
---|---|---|
str() | 路径的字符串形式 | 一般用途 |
as_posix() | POSIX 风格的路径字符串 | 确保返回以 / 分隔的路径 |
fspath() | 路径的字符串形式 | 文件系统路径协议,显式调用 |
os.fspath() | 路径的字符串形式 | 通用方法,适用于任何路径对象 |
验证多种方法
from pathlib import Path import os # 创建一个 Path 对象 path = Path("/home/user/documents") # 使用不同的方法获取字符串路径 print(str(path)) # 输出: /home/user/documents print(path.as_posix()) # 输出: /home/user/documents print(path.__fspath__()) # 输出: /home/user/documents print(os.fspath(path)) # 输出: /home/user/documents
总结
推荐使用 str(path) 来获取路径字符串,因为它简单直观,适合大多数场景。
如果需要确保路径以 POSIX 风格返回,可以选择 path.as_posix()。
如果与操作系统文件系统接口交互,os.fspath() 是更规范的方法。
9. python3 发送邮件
https://github.com/Hubery-Lee/Notes/blob/master/如何利用python发送邮件.md
https://gist.github.com/moonlighf/ea56ff9161a979d1852abcab13e5eacf
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· Blazor Hybrid适配到HarmonyOS系统
· 万字调研——AI生成内容检测
· 解决跨域问题的这6种方案,真香!
· Obsidian + DeepSeek:免费 AI 助力你的知识管理,让你的笔记飞起来!
· 一套基于 Material Design 规范实现的 Blazor 和 Razor 通用组件库
2020-09-28 在win10下设置nfs和mount