Os Sys

import  os

# 当前文件的绝对路径
ret1=os.path.abspath(__file__)
print(ret1) # E:\classtext\day61\try\os模块.py

# 求当前文件的父目录
ret2=os.path.dirname(ret1)
print(ret2)

# 求当前文件的父目录的父目录
ret3=os.path.dirname(ret2)
print(ret3)

# 拼接目录
ret4=os.path.join(ret3,"abc")
print(ret4) # E:\classtext\day61\abc

# 当前操作系统的路径分隔符
ret5=os.path.sep
print(ret5) # \
# Linux 路径分隔符是 /
-------------------------------------------------------------------



1. os

这个模块包含普遍的操作系统功能。如果你希望你的程序能够与平台无关的话,这个模块是尤为重要的。即它允许一个程序在编写后不需要任何改动,也不会发生任何问题,就可以在Linux和Windows下运行。一个例子就是使用os.sep可以取代操作系统特定的路径分割符。

下面列出了一些在os模块中比较有用的部分。它们中的大多数都简单明了。

  • os.name字符串指示你正在使用的平台。比如对于Windows,它是'nt',而对于Linux/Unix用户,它是'posix'
  • os.getcwd()函数得到当前工作目录,即当前Python脚本工作的目录路径。
  • os.getenv()os.putenv()函数分别用来读取和设置环境变量。
  • os.listdir()返回指定目录下的所有文件和目录名。
  • os.remove()函数用来删除一个文件。
  • os.system()函数用来运行shell命令。
  • os.linesep字符串给出当前平台使用的行终止符。例如,Windows使用'\r\n',Linux使用'\n'而Mac使用'\r'
  • os.path.split()函数返回一个路径的目录名和文件名。如:>>> os.path.split('/home/swaroop/byte/code/poem.txt'),其结果为:('/home/swaroop/byte/code', 'poem.txt')
  • os.path.isfile()os.path.isdir()函数分别检验给出的路径是一个文件还是目录。类似地,os.path.existe()函数用来检验给出的路径是否真地存在。

2. sys

  • sys.argv: 可从命令行中获得参数。sys.argv[0]表示程序名,sys.argv[1]即为第一个参数。
  • sys.platform:获得操作系统类型
  • sys.exit(n):执行至主程序的末尾时,解释器会自动退出. 但是如果需要中途退出程序, 你可以调用sys.exit 函数, 它带有一个可选的整数参数返回给调用它的程序. 这意味着你可以在主程序中捕获对sys.exit 的调用。(注:0是正常退出,其他为不正常,可抛异常事件供捕获!)
  • sys.path:在使用模块的某一个功能前,可能需要导入一些第三方包。在执行import module_name的时候,python会搜索module_name。根据sys.path的路径来搜索module.name。可以添加自己的模块路径。 Sys.path.append(“mine module path”).
  • sys.modules:This is a dictionary that maps module names to modules which have already been loaded. This can be manipulated to force reloading of modules and other tricks.
  • sys.stdin,sys.stdout,sys.stderr:stdin , stdout , 以及stderr 变量包含与标准I/O 流对应的流对象. 如果需要更好地控制输出,而print 不能满足你的要求, 它们就是你所需要的. 你也可以替换它们, 这时候你就可以重定向输出和输入到其它设备( device ), 或者以非标准的方式处理它们。如:sys.stdout.write('Hello World!');name=sys.stdin.readline()[:-1]。
  • sys.version_info:得到python的版本信息

猜你喜欢

转载自www.cnblogs.com/nick477931661/p/8617805.html
今日推荐