日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪(fǎng)問(wèn) 生活随笔!

生活随笔

當(dāng)前位置: 首頁(yè) > 编程语言 > python >内容正文

python

Python 中的 sys 库 和 os 库

發(fā)布時(shí)間:2024/9/30 python 33 豆豆
生活随笔 收集整理的這篇文章主要介紹了 Python 中的 sys 库 和 os 库 小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

一,sys--系統(tǒng)相關(guān)的參數(shù)和函數(shù)

1.??sys.argv: #list??

傳遞給Python腳本的命令行參數(shù)列表,第一個(gè)參數(shù)是程序本身的路徑,實(shí)現(xiàn)了從程序外部向程序內(nèi)傳遞參數(shù)。

import sysprint("命令行參數(shù)如下:") for i in sys.argv:print(i)結(jié)果如下: D:\st13\test>1.py 西安 北京 2019-01-29 命令行參數(shù)如下: D:\st13\test\1.py 西安 北京 2019-01-29


2.?sys.path: #list

import模塊的目錄名位置列表 ,列表中的第一項(xiàng)為當(dāng)前位置。

>>> import sys >>> print(sys.path) ['', 'C:\\Python36\\python36.zip', 'C:\\Python36\\DLLs', 'C:\\Python36\\lib', 'C:\\Python36', 'C:\\Users\\Lenovo\\AppData\\Roaming\\Python\\Python36\\site-packages', 'C:\\Python36\\lib\\site-packages']

3.??sys.exit([arg]):
?

import sys#sys.exit() 退出程序, 正常退出時(shí)為sys.exit(0) def f(value):print(value)sys.exit(0)print("hello") try:sys.exit(1) except SystemExit as value:f(value)print("world")結(jié)果如下: hello 1

4. sys.version:#string

獲得python版本的信息? ?

>>> import sys >>> sys.version '3.6.5 (v3.6.5:f59c0932b4, Mar 28 2018, 17:00:18) [MSC v.1900 64 bit (AMD64)]'

5. sys.platform:? ? #string

獲取當(dāng)前系統(tǒng)平臺(tái),返回操作系統(tǒng)的名稱(chēng)。?

>>> import sys >>> sys.platform 'win32'

6.?sys.modules:? ?#module

返回系統(tǒng)導(dǎo)入的模塊的 絕對(duì)路徑

>>> import sys >>> sys.modules['os'] <module 'os' from 'C:\\Python36\\lib\\os.py'>

7. sys.modules.keys() : #dict_keys

返回所有已經(jīng)導(dǎo)入的模塊?

>>>import sys >>> sys.modules.keys() dict_keys(['builtins', 'sys', '_frozen_importlib', '_imp', '_warnings', '_thread', '_weakref', '_frozen_importlib_external', '_io', 'marshal', 'nt', 'winreg', 'zipimport', 'encodings', 'codecs', '_codecs', 'encodings.aliases', 'encodings.utf_8', '_signal', '__main__', 'encodings.latin_1', 'io', 'abc', '_weakrefset', 's ite', 'os', 'errno', 'stat', '_stat', 'ntpath', 'genericpath', 'os.path', '_collections_abc', '_sitebuiltins', 'sysconfig', '_bootlocale', '_locale', 'encodings.gbk', '_codecs_cn', '_multibytecodec', 'types', 'functools', '_functools', 'collections', 'operator', '_operator', 'keyword', 'heapq', '_heapq', 'itertools', ' reprlib', '_collections', 'weakref', 'collections.abc', 'importlib', 'importlib._bootstrap', 'importlib._bootstrap_external', 'warnings', 'importlib.util', 'importlib.abc', 'importlib.machinery', 'contextlib', 'zope', 'atexit'])

8?. sys.modules.values() :#dict_values

返回所有的模塊,包括模塊的絕對(duì)路徑

>>> sys.modules.values() dict_values([<module 'builtins' (built-in)>, <module 'sys' (built-in)>, <module 'importlib._bootstrap' (frozen)>, <module '_imp' (built-in)>, <module '_warnings' (built-in)>, <module '_thread' (built-in)>, <module '_weakref' (built-in)>, <module 'importlib._bootstrap_external' (frozen)>, <module 'io' (built-in)>, <modu le 'marshal' (built-in)>, <module 'nt' (built-in)>, <module 'winreg' (built-in)>, <module 'zipimport' (built-in)>, <module 'encodings' from 'C:\\Python36\\lib\\encodings\\__init__.py'>, <module 'codecs' from 'C:\\Python36\\lib\\codecs.py'>, <module '_codecs' (built-in)>, <module 'encodings.aliases' from 'C:\\Python36\\ lib\\encodings\\aliases.py'>, <module 'encodings.utf_8' from 'C:\\Python36\\lib\\encodings\\utf_8.py'>, <module '_signal' (built-in)>, <module '__main__' (built-in)>, <module 'encodings.latin_1' from 'C:\\Python36\\lib\\encodings\\latin_1.py'>, <module 'io' from 'C:\\Python36\\lib\\io.py'>, <module 'abc' from 'C:\\Pyth on36\\lib\\abc.py'>, <module '_weakrefset' from 'C:\\Python36\\lib\\_weakrefset.py'>, <module 'site' from 'C:\\Python36\\lib\\site.py'>, <module 'os' from 'C:\\Python36\\lib\\os.py'>, <module 'errno' (built-in)>, <module 'stat' from 'C:\\Python36\\lib\\stat.py'>, <module '_stat' (built-in)>, <module 'ntpath' from 'C:\\ Python36\\lib\\ntpath.py'>, <module 'genericpath' from 'C:\\Python36\\lib\\genericpath.py'>, <module 'ntpath' from 'C:\\Python36\\lib\\ntpath.py'>, <module '_collections_abc' from 'C:\\Python36\\lib\\_collections_abc.py'>, <module '_sitebuiltins' from 'C:\\Python36\\lib\\_sitebuiltins.py'>, <module 'sysconfig' from 'C: \\Python36\\lib\\sysconfig.py'>, <module '_bootlocale' from 'C:\\Python36\\lib\\_bootlocale.py'>, <module '_locale' (built-in)>, <module 'encodings.gbk' from 'C:\\Python36\\lib\\encodings\\gbk.py'>, <module '_codecs_cn' (built-in)>, <module '_multibytecodec' (built-in)>, <module 'types' from 'C:\\Python36\\lib\\types.p y'>, <module 'functools' from 'C:\\Python36\\lib\\functools.py'>, <module '_functools' (built-in)>, <module 'collections' from 'C:\\Python36\\lib\\collections\\__init__.py'>, <module 'operator' from 'C:\\Python36\\lib\\operator.py'>, <module '_operator' (built-in)>, <module 'keyword' from 'C:\\Python36\\lib\\keyword.py '>, <module 'heapq' from 'C:\\Python36\\lib\\heapq.py'>, <module '_heapq' (built-in)>, <module 'itertools' (built-in)>, <module 'reprlib' from 'C:\\Python36\\lib\\reprlib.py'>, <module '_collections' (built-in)>, <module 'weakref' from 'C:\\Python36\\lib\\weakref.py'>, <module 'collections.abc' from 'C:\\Python36\\lib\ \collections\\abc.py'>, <module 'importlib' from 'C:\\Python36\\lib\\importlib\\__init__.py'>, <module 'importlib._bootstrap' (frozen)>, <module 'importlib._bootstrap_external' (frozen)>, <module 'warnings' from 'C:\\Python36\\lib\\warnings.py'>, <module 'importlib.util' from 'C:\\Python36\\lib\\importlib\\util.py'>, < module 'importlib.abc' from 'C:\\Python36\\lib\\importlib\\abc.py'>, <module 'importlib.machinery' from 'C:\\Python36\\lib\\importlib\\machinery.py'>, <module 'contextlib' from 'C:\\Python36\\lib\\contextlib.py'>, <module 'zope' (namespace)>, <module 'atexit' (built-in)>])

9.??sys.stdout? ?/? sys.stdin? /? sys.stderr :

sys.stdout 標(biāo)準(zhǔn)輸出 ; sys.stdin 標(biāo)準(zhǔn)輸入;? sys.stderr 錯(cuò)誤輸出

>>> import sys >>> sys.stdout <_io.TextIOWrapper name='<stdout>' mode='w' encoding='utf-8'> >>> sys.stdin <_io.TextIOWrapper name='<stdin>' mode='r' encoding='utf-8'> >>> sys.stderr <_io.TextIOWrapper name='<stderr>' mode='w' encoding='utf-8'>

標(biāo)準(zhǔn)輸入:一般為鍵盤(pán)輸入,stdin對(duì)象為解釋器提供輸入字符流,一般使用input()函數(shù)

sys.stdin.readline()? ?? ???從標(biāo)準(zhǔn)輸入讀一行

import sysprint("Please input you name:") name = sys.stdin.readline() print(name)Please input you name: Xiao Ming #用戶(hù)輸入,然后Enter Xiao MingProcess finished with exit code 0

標(biāo)準(zhǔn)輸出:一般為屏幕。stdout對(duì)象接收到print語(yǔ)句產(chǎn)生的輸出,print調(diào)用 stdout 的 write方法

import syssys.stdout.write("123456\n") sys.stdout.flush()123456Process finished with exit code 0

?

10.?sys.getdefaultencoding() / sys.getfilesystemencoding() : #string

sys.getdefaultencoding() : 獲取解釋器默認(rèn)編碼。?

sys.getfilesystemencoding() : 獲取內(nèi)存數(shù)據(jù)存到文件里的默認(rèn)編碼。
?

>>> import sys >>> sys.getdefaultencoding() 'utf-8' >>> sys.getdefaultencoding() 'utf-8'


二,OS——操作系統(tǒng)

使用?os?模塊為程序提供了一些可移植性。但并非所有的函數(shù)在每個(gè)平臺(tái)上都可用,?比如后文中提到的一些進(jìn)程管理函數(shù)在 Windows 上就不可用。

Python 文檔中?os?模塊的的副標(biāo)題是「各種各樣的操作系統(tǒng)接口」。模塊包含的大部分函數(shù)用于創(chuàng)建和管理進(jìn)程或文件系統(tǒng),例如:目錄與文件,此外還有一些其他函數(shù)。

?

1,os.listdir()? #list

查看特定目錄下加文件??

import os pp = 'C:/Users/HP/Desktop/文檔/Python/新建文件夾/text'dd = sorted(os.listdir(pp))print(dd) print(type(dd))['1.py', '2.py', 'test.py', 'text2.py'] <class 'list'>Process finished with exit code 0

2, os.walk()? ?#list

函數(shù)經(jīng)過(guò)一個(gè)目錄時(shí),會(huì)遞歸的訪(fǎng)問(wèn)它的子目錄,并產(chǎn)生一個(gè)?tuple,其中包含了目錄路徑、該路徑下任何直接子目錄和指定目錄中所有文件名的列表。

import os pp = 'C:/Users/HP/Desktop/文檔/Python/新建文件夾'dd = sorted(os.walk(pp))print(dd) print(type(dd)) [('C:/Users/HP/Desktop/文檔/Python/新建文件夾', ['.idea', 'basis', 'crawal', 'CTF', 'sql', 'text', 'venv', '__pycache__'], []), ('C:/Users/HP/Desktop/文檔/Python/新建文件夾\\.idea', ['codeStyles', 'dictionaries'], ['encodings.xml', 'misc.xml', 'modules.xml', 'workspace.xml', '新建文件夾.iml']), ('C:/Users/HP/Desktop/文檔/Python/新建文件夾\\.idea\\codeStyles', [], ['codeStyleConfig.xml']), ('C:/Users/HP/Desktop/文檔/Python/新建文件夾\\.idea\\dictionaries', [], ['HP.xml']), ('C:/Users/HP/Desktop/文檔/Python/新建文件夾\\CTF', [], ['3位數(shù)字利用字典型爆破zip文件.py', 'ASCII偏移.py', 'ctf-cookie-欺騙.py', '凱撒密碼與base64結(jié)合.py', '利用 RGB 生成圖片.py', '杰斐遜轉(zhuǎn)盤(pán)解密.py', '混合進(jìn)制轉(zhuǎn)化為字符.py']), ('C:/Users/HP/Desktop/文檔/Python/新建文件夾\\__pycache__', [], []), ('C:/Users/HP/Desktop/文檔/Python/新建文件夾\\basis', [], ['batterys.py', 'car.py', 'class_car_inherit.py', 'class_dog.py', 'dictionary_nest.py', 'ecar.py', 'file.py', 'function.py', 'function_any_number_.py', 'function_manyshican.py', 'input_filling_dictinary.py', 'input_filling_dictionary2.py', 'kong.py', 'my_car.py', 'while_continue.py', 'zidian.py', '__init__.py', '第幾天.py']), ('C:/Users/HP/Desktop/文檔/Python/新建文件夾\\crawal', [], ['100次爬取用時(shí).py', '__init__.py', '實(shí)例 一 爬取JD商品信息.py', '實(shí)例 七 淘寶商品信息爬取.py', '實(shí)例三 用爬蟲(chóng)進(jìn)行百度搜索.py', '實(shí)例二 爬取亞馬遜的商品信息.py', '實(shí)例五 ip地址查詢(xún).py', '實(shí)例六爬取中國(guó)大學(xué)待命信息.py', '實(shí)例四 爬取圖片并保存.py']), ('C:/Users/HP/Desktop/文檔/Python/新建文件夾\\sql', ['bool', 'time'], []), ('C:/Users/HP/Desktop/文檔/Python/新建文件夾\\sql\\bool', [], ['bool_post.py', 'get_column_name.py', 'get_table_name.py']), ('C:/Users/HP/Desktop/文檔/Python/新建文件夾\\sql\\time', [], ['time_get.py', 'time_post.py', 'X-F-F頭注入_columns_name.py', 'X-F-F頭注入_tables_name.py', 'X-F-F頭注入_z_dumps.py']), ('C:/Users/HP/Desktop/文檔/Python/新建文件夾\\text', [], ['1.py', '2.py', 'test.py', 'text2.py']), ('C:/Users/HP/Desktop/文檔/Python/新建文件夾\\venv', ['Include', 'Lib', 'Scripts'], ['pyvenv.cfg']), ('C:/Users/HP/Desktop/文檔/Python/新建文件夾\\venv\\Include', [], []), ('C:/Users/HP/Desktop/文檔/Python/新建文件夾\\venv\\Lib', ['site-packages'], []), ('C:/Users/HP/Desktop/文檔/Python/新建文件夾\\venv\\Lib\\site-packages', [], []), ('C:/Users/HP/Desktop/文檔/Python/新建文件夾\\venv\\Scripts', [], ['activate', 'activate.bat', 'Activate.ps1', 'deactivate.bat'])] <class 'list'>

3,os.name? ? #str

顯示當(dāng)前使用的平臺(tái)? ?win ->? nt??

import osprint(os.name)'nt'

4,os.getcwd()? ? ? ? #str

獲取當(dāng)前腳本工作的絕對(duì)路徑

import os #pp = 'C:/Users/HP/Desktop/文檔/Python/新建文件夾/text'dd = os.getcwd() print(dd) print(type(dd))C:\Users\HP\Desktop\文檔\Python\新建文件夾\text <class 'str'>

5,?os.remove(‘filename’)

用于刪除指定路徑的文件。如果指定的路徑是一個(gè)目錄,將拋出OSError。強(qiáng)調(diào)必須是文件,而不是文件夾或者目錄

import osos.remove('C:\\Users\\HP\Desktop\\文檔\\Python\\新建文件夾\\text\\111.py')

6,os.makedirs(‘dirname/dirname’)

可生成多層遞規(guī)目錄? ? 注意 該命令只能用來(lái)生成文件夾 不能生成文件,如果文件夾已經(jīng)存在會(huì)報(bào)錯(cuò)

import osos.makedirs('C:/Users/HP\Desktop/文檔/Python/新建文件夾/text/fff/ddd')

7,os.rmdir(‘dirname’)

刪除單級(jí)目錄,如果不是空目錄會(huì)報(bào)錯(cuò),只能用來(lái)刪除空目錄

import osos.rmdir('C:/Users/HP\Desktop/文檔/Python/新建文件夾/text/fff/ddd')

8,os.rename(“oldname”,”newname”)

重命名文件?

import osos.rename('C:/Users/HP\Desktop/文檔/Python/新建文件夾/text/text4.py','C:/Users/HP\Desktop/文檔/Python/新建文件夾/text/text2.py')

9,os.system('filename')

運(yùn)行shell命令,注意:這里是打開(kāi)一個(gè)新的shell,運(yùn)行命令,當(dāng)命令結(jié)束后,關(guān)閉shell。用于打開(kāi)文件或者程序,不能打開(kāi)文件夾

10,os.environ

獲取系統(tǒng)環(huán)境變量

import osprint(os.environ) print(type(os.environ))

?

?

?

?

?

?

?

?

?

?

?

?

?

?

?

?

?

?

?

?

總結(jié)

以上是生活随笔為你收集整理的Python 中的 sys 库 和 os 库的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。

如果覺(jué)得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。