相对于Python解析器相关的组件:Python版本、存储位置,第三方库的位置;通过调取当前操作系统的某些方法到Python中使用。
>>> import sys #引入sys模块
>>> sys.platform #判断系统环境
'win32'
注意:可以使用条件语句来对系统环境进行判断,从而执行不同类型的代码。
>>> sys.version #判断操作系统版本
'3.10.2 (tags/v3.10.2:a58ebcc, Jan 17 2022, 14:12:15) [MSC v.1929 64 bit (AMD64)]'
>>>
>>> sys.getdefaultencoding() #判断操作系统编码模式
'utf-8'
>>> sys.path #查看目前被引用模块的路径
['', 'D:\\python\\python310.zip', 'D:\\python\\DLLs', 'D:\\python\\lib', 'D:\\python', 'D:\\python\\lib\\site-packages']
>>>
注意:如果引入的模块路径不在sys.path内,我们可以通过sys.path.append()增加一条路径,因为sys.path输出的就是一个列表。
5、sys.modules查看目前加载的所有模块
>>> sys.modules #目前Python环境中加载的所有模块
{'sys': <module 'sys' (built-in)>, 'builtins': <module 'builtins' (built-in)>, '_frozen_importlib': <module '_frozen_importlib' (frozen)>, '_imp': <module '_imp' (built-in)>, '_thread': <module '_thread' (built-in)>, '_warnings': <module '_warnings' (built-in)>, '_weakref': <module '_weakref' (built-in)>, '_io': <module '_io' (built-in)>, 'marshal': <module 'marshal' (built-in)>, 'nt': <module 'nt' (built-in)>, 'winreg': <module 'winreg' (built-in)>, '_frozen_importlib_external': <module '_frozen_importlib_external' (frozen)>}
写在异常或条件语句中,中途退出程序
如果参数非0则可以捕获这个异常
执行后将会引发异常,如果捕获成功就继续执行后续代码,捕获失败则后续代码不运行
>>> import sys
>>> a = sys.stdin.readline()
boy
>>> a
'boy\n'
>>> a = 'boy'
>>> sys.stdout.write(a)
boy3
>>> a
'boy'
相对于Python的操作系统环境,屏蔽不同的操作对文件系统路径、增删文件等操作差异的问题。
import os #引入OS模块
print(os.getcwd())
a = os.listdir(os.getcwd())
print(a)
输出结果:
['.idea', 'main.py', 'ssh.py', 'telnet测试.py', '__pycache__', '代码块.py', '内置函数.py', '列表学习.py', '字符串学习笔记.py', '学习1.py', '模块化代码.py']
import os
path_prefix = os.getcwd() #当前目录
print(path_prefix,type(path_prefix)) #输出当前目录与元素类型
file = os.listdir(os.getcwd()) #当前目录所有文件形成列表
print(file)
abspath = [] #定义空列表
for i in file : #对目录列表进行迭代
# a_abs_path= path_prefix + '\\' +i #此两条标红代码作用一样,join方法自动添加路径符\\
a_abs_path = os.path.join(path_prefix,i)
abspath.append(a_abs_path) #空列表新增
print(abspath)
输出结果:
E:\pythonProject <class 'str'>
['.idea', 'main.py', 'ssh.py', 'telnet测试.py', '__pycache__', '代码块.py', '内置函数.py', '列表学习.py', '字符串学习笔记.py', '学习1.py', '模块化代码.py']
['E:\\pythonProject\\.idea', 'E:\\pythonProject\\main.py', 'E:\\pythonProject\\ssh.py', 'E:\\pythonProject\\telnet测试.py', 'E:\\pythonProject\\__pycache__', 'E:\\pythonProject\\代码块.py', 'E:\\pythonProject\\内置函数.py', 'E:\\pythonProject\\列表学习.py', 'E:\\pythonProject\\字符串学习笔记.py', 'E:\\pythonProject\\学习1.py', 'E:\\pythonProject\\模块化代码.py']
import os
os.mkdir('E:\\Download\\学习') #创建写入文件的文件夹
path_prefix = 'E:\\Download\\学习' #定义文件绝对路径的路径前缀
a = '好好学习' #定义写入的字符串
for i in range(10) : #迭代需要创建的文件元素,具体可自己更改为实际工作中列表
if 'int' in str(type(i)) : #使用条件语句进行判断具体需要创建的文件类型
File = str(i) + '.txt' #定义文件名称
file = os.path.join(path_prefix,File) #定义绝对路径
print(file)
f = open(file,mode='w') #创建并打开文件
f.write(a) #可以通过条件语句判断写入不同的数据
f.close()
a = os.path.normpath('E:/Download\\学习')
print(a)
输出结果:
E:\Download\学习
import datetime
a = datetime.datetime.now()
print(a)
输出:
2022-04-13 15:23:38.470366