建设网站的目的和内容,wordpress媒体库分离,南昌网站网页设计,专业网站建设公司兴田德润怎么样[Python学习日记-47] Python 中的系统调用模块
简介
os
sys 简介 os 模块和 sys 模块提供了很多允许你的程序与操作系统直接交互的功能。下面将进行逐一介绍。 os 一、os.getcwd() 得到当前工作目录#xff0c;即当前 Python 脚本工作的目录路径#xff08;绝对路径#…[Python学习日记-47] Python 中的系统调用模块
简介
os
sys 简介 os 模块和 sys 模块提供了很多允许你的程序与操作系统直接交互的功能。下面将进行逐一介绍。 os 一、os.getcwd() 得到当前工作目录即当前 Python 脚本工作的目录路径绝对路径代码如下
import osprint(os.getcwd())
代码输出如下 二、os.listdir() 返回指定目录下的所有文件和目录名代码如下
import osprint(os.listdir(C:\\Users\\Administrator\\Desktop\\jove_test_module))
代码输出如下 三、os.remove() 该函致用来删除一个文件删除当前目录下的文件可以直接写文件名如果要删除其他目录下的文件请用绝对路径
import osos.remove(file_name) # 删除当前目录下的文件如果要删除其他目录下的文件请用绝对路径
四、os.removedirs() 该函数可以删除目录
import osos.removedirs(C:\\Users\\Administrator\\Desktop\\remove_dir)
注意如果目标目录不为空则会抛出 OSError 错误多层目录也会抛出该错误即只能删除一个空的目录。
五、os.path.isfile() 检验给出的路径是否是一个文件
import osprint(os.path.isfile(C:\\Users\\Administrator\\Desktop\\is_dir))
print(os.path.isfile(C:\\Users\\Administrator\\Desktop\\is_file))
代码输出如下 六、os.path.isdir() 检验给出的路径是否是一个目录
import osprint(os.path.isdir(C:\\Users\\Administrator\\Desktop\\is_dir))
print(os.path.isdir(C:\\Users\\Administrator\\Desktop\\is_file))
代码输出如下 七、os.path.isabs() 判断是否是绝对路径
import osprint(os.path.isabs(C:\\Users\\Administrator\\Desktop\\is_dir))
print(os.path.isabs(.\\is_dir))
代码输出如下 八、os.path.exists() 检验给出的路径是否真实存在
import osprint(os.path.exists(C:\\Users\\Administrator\\Desktop\\is_dir))
print(os.path.exists(C:\\Users\\Administrator\\Desktop\\not_this_dir)) 代码输出如下 九、os.path.split() 返回一个路径的目录名和文件名
import osprint(os.path.split(C:\\Users\\Administrator\\Desktop\\is_dir))
代码输出如下 十、os.path.splitext() 分离扩展名后缀将会返回一个包含路径的文件名和文件的扩展名
import osprint(os.path.splitext(C:\\Users\\Administrator\\Desktop\\is_file.py))
代码输出如下 十一、os.path.dirname() 获取路径名
import osprint(os.path.dirname(C:\\Users\\Administrator\\Desktop\\is_file.py))
代码输出如下 十二、os.path.abspath() 获取绝对路径
import osprint(os.path.abspath(test.py))
代码输出如下 十三、os.path.basename() 获取文件名
import osprint(os.path.basename(C:\\Users\\Administrator\\Desktop\\is_file.py))
代码输出如下 十四、os.system() 远行 shell 命令
import osprint(os.system(dir))
代码输出如下 注意需要区分当前系统是 Windows 还是 Linux两个系统之间会有 shell 的差异。
十五、os.getenv() 读取操作系统环境变量 Path 的值
import osprint(os.getenv(Path))
代码输出如下 即输出这里的值 注意环境变量的读取也需要区分系统Windows 和 Linux 之间的环境变量是不同的
十六、os.environ 返回操作系统所有的环境变量
import osprint(os.environ)
代码输出如下 十七、os.environ,setdefault() 设置系统环境变量仅程序运行时有效
import osos.environ,setdefault(HOME,/home/jove)
代码效果程序运行期间将家目录变更为 /home/jove
十八、os.linesep() 给出当前平台使用的行终止符
import osprint(os.linesep())
代码输出如下 注意Windows 使用 \r\nLinux 和 MAC 使用 \n
十九、os.name() 指示你正在使用的平台
import osprint(os.name)
代码传输如下 不同系统显示如下
系统值WindowsntLinuxposixmacOS/Unixposix其它系统具体值需要看具体系统
二十、os.rename() 重命名但不会覆盖已存在的同名文件
import osprint(os.rename(old_file_name,new_file_name))
二十一、os.replace() 重命名但会覆盖已存在的同名文件
import osprint(os.replace(old_file_name,new_file_name))
二十二、os.makedirs() 创建多级目录
import osos.makedirs(C:\\Users\\Administrator\\Desktop\\makedir1\\makedir2\\makedir3\\file.py)
代码效果如下 注意只能创建目录不能创建文件
二十三、os.mkdir() 创建单个目录
import osos.mkdir(rC:\Users\Administrator\Desktop\makedir1\makedir11)
代码效果如下 二十四、os.stat() 获股文件属性
import osprint(os.stat(rC:\Users\Administrator\Desktop\jove_test_module\setup.py))
代码输出如下 os.stat_result(st_mode33206, st_ino7036874418158520, st_dev11972334884292589113, st_nlink1, st_uid0, st_gid0, st_size453, st_atime1728873392, st_mtime1728744251, st_ctime1728873392) 二十五、os.chmod() 修改文件权限与时间戳
import osos.chmod(rC:\Users\Administrator\Desktop\jove_test_module\setup.py,0o400)
代码效果如下 常见的权限模式如下
模式权限 0o400 只读权限0o600读写权限0o700读写执行权限0o755所有者具有读写执行权限其他用户只有读执行权限
二十六、os.path.getsize() 获取文件大小以字节的形式输出
import osprint(os.path.getsize(rC:\Users\Administrator\Desktop\jove_test_module\setup.py))
代码输出如下 二十七、os.path.join() 结合目录名与文件名
import osprint(os.path.join(rC:\Users\Administrator\Desktop\jove_test_module,setup.py))
代码输出如下 二十八、os.chdir() 改变工作目录到指定目录中
import osprint(os.getcwd())
os.chdir(rC:\Users\Administrator\Desktop\jove_test_module)
print(os.getcwd())
代码输出如下 二十九、os.get_terminal_size() 获取当前终端的分辨率
import osprint(os.get_terminal_size())
代码输出如下 三十、os.kill() 杀死指定进程用 PID 来指定与 Linux 当中的 kill 命令差不多
import os
import signalos.kill(2060,signal.SIGKILL) # pid要发送信号的进程的PID进程ID,signal要发送的信号
常见信号如下
信号说明signal.SIGTERM终止进程signal.SIGKILL/signal.SIGILL强制终止进程signal.SIGINT跟按下 CtrlC 相同的效果 sys
一、sys.argv 命令行参数列表第一个元素是程序本身路径后面就是执行时后面跟的参数
import sysprint(sys.argv)
代码输出如下 二、sys.exit() 于终止当前程序的执行使用方式有两种 不带参数直接调用 exit() 函数会立即终止程序的执行并返回到调用程序的环境中。相当于在程序中遇到了终止语句。
import sysprint(Before exit)
sys.exit()
print(After exit) # 这行代码不会被执行代码输出如下 带一个整数参数传递一个整数给 exit() 函数可以返回一个特定的退出代码给调用程序的环境。0表示程序正常终止非零值表示出现了错误或异常终止。
import sysprint(Before exit)
sys.exit(1)
print(After exit) # 这行代码不会被执行代码输出如下 三、sys.version 获取 Python 解释程序的版本信息
import sysprint(sys.version)
代码输出如下 四、sys.maxsize 输出最大的 int 值在 Python2 中使用的是 maxint而在 Python3 中 maxint 被废除了被 maxsize 代替了
import sysprint(sys.maxsize)
代码输出如下 五、sys.path 返回模块的搜索路径初始化时使用 PYTHONPATH 环境变量的值
import sysprint(sys.path)
代码输出如下 六、sys.platform 返回操作系统平台名称
import sysprint(sys.platform)
代码输出如下 常见的 sys.platform 值包括
win32表示 Windows 操作系统darwin表示 macOS 操作系统linux表示 Linux 操作系统cygwin表示在 Cygwin 环境下的 Windows 系统其他特定平台的标识符
七、sys.stdout.write() 标准输出流上写入字符的方法。它接受一个字符串作为参数并将其写入到标准输出流中而不会像 print() 函数一样自动添加换行符。
import syssys.stdout.write(Please:)
代码输出如下 相比于 print() 函数sys.stdout.write() 的优势在于可以实现对输出内容的更精确控制例如在一行中多次写入而不换行或者控制输出位置等。但需要注意的是sys.stdout.write() 接受的参数必须是字符串类型如果需要输出其他类型的数据需要先将其转换为字符串。
八、sys.stdin.readline() 从标准输入流stdin中读取一行内容
import sysval sys.stdin.readline()[:-1]
print(val)
代码输出如下 九、sys.getrecursionlimit() 获取最大递归层数
import sysprint(sys.getrecursionlimit())
代码输出如下 十、sys.setrecursionlimit() 设置最大递归层数为1200次
import syssys.setrecursionlimit(1200)
十一、sys.getdefaultencoding() 获取解释器默认编码
import sysprint(sys.getdefaultencoding())
代码输出如下 在 Python2 中则为 ASCII如下图所示 十二、sys.getfilesystemencoding() 获取内存数据存到文件里的默认编码
import sysprint(sys.getfilesystemencoding())
代码输出如下