python中os和sys模塊的使用

os模塊

以下操作都在ipython中實現:
import os #首先調用os模塊
os. #按下tab鍵可以看到os模塊的用法列表
1) os.listdir() #查看指定目錄下所有目錄或文件名:

In [100]: os.listdir("/root/PycharmProjects/")
Out[100]: ['pycharm07']

2) os.path.split() #將目錄與文件名分開顯示:

In [95]: os.path.split("/home/kiosk/westos.txt")
Out[95]: ('/home/kiosk', 'westos.txt')

3) os.path.basename() #查看文件名:

In [94]: os.path.basename("/home/kiosk/westos.txt")
Out[94]: 'westos.txt'

4) os.path.abspath() #在當前路徑下查看文件路徑,如果文件存在返回文件路徑,如果文件不存在,返回當前路徑與文件名,不會報錯:

In [3]: ls      #在當前路徑下只存在test.txt一個文件
test.txt

In [4]: pwd     #查看當前路徑
Out[4]: u'/root/PycharmProjects/pycharm07'   

In [5]: os.path.abspath("test.txt")    #可返回文件正確路徑
Out[5]: '/root/PycharmProjects/pycharm07/test.txt'

In [6]: os.path.abspath("westos.txt")  #輸入一個當前路徑下沒有的文件名,也會返回文件路徑,並且不會報錯,在使用此命令的時候切記注意當前你所在的路徑: 
Out[6]: '/root/PycharmProjects/pycharm07/westos.txt'

5) os.system(“df -h”) #查看掛載信息

In [7]: os.system("df -h")
Filesystem      Size  Used Avail Use% Mounted on
/dev/sda3       115G   56G   60G  48% /
devtmpfs        1.8G     0  1.8G   0% /dev
tmpfs           1.8G  208K  1.8G   1% /dev/shm
tmpfs           1.8G  8.8M  1.8G   1% /run
tmpfs           1.8G     0  1.8G   0% /sys/fs/cgroup
/dev/loop0      3.6G  3.6G     0 100% /var/www/html/rhel6.5
/dev/loop2      3.5G  3.5G     0 100% /var/www/html/rhel7.0
/dev/loop1      3.8G  3.8G     0 100% /var/www/html/rhel7.2
/dev/sda1       497M  146M  351M  30% /boot
tmpfs           368M   32K  368M   1% /run/user/1000
tmpfs           368M     0  368M   0% /run/user/0

6) os.sep #文件分隔符,返回“/”

In [8]: os.sep
Out[8]: '/'

7) os.linesep #換行符,返回“\n”

In [25]: os.linesep
Out[25]: '\n'

8) os.rename() #指定文件重命名

In [28]: ls
test.txt

In [29]: os.rename("test.txt","test")

In [30]: ls
test

9) os.remove() #刪除指定文件

In [31]: ls
test  westos.txt

In [32]: os.remove("westos.txt")

In [33]: ls
test

10) os.mkdir() #創建目錄

In [33]: ls
test

In [34]: os.mkdir("hk")

In [35]: ls
hk/  test

sys模塊

import sys #調用sys模塊
1) sys.path # 獲取指定模塊搜索路徑的字符串集合(可將寫好的模塊路徑添加其中,就可以在程序中import調用時,正確找到)

In [37]: sys.path
Out[37]: 
['',
 '/usr/bin',
 '/usr/lib64/python27.zip',
 '/usr/lib64/python2.7',
 '/usr/lib64/python2.7/plat-linux2',
 '/usr/lib64/python2.7/lib-tk',
 '/usr/lib64/python2.7/lib-old',
 '/usr/lib64/python2.7/lib-dynload',
 '/usr/lib64/python2.7/site-packages',
 '/usr/lib64/python2.7/site-packages/gtk-2.0',
 '/usr/lib/python2.7/site-packages',
 '/usr/lib/python2.7/site-packages/IPython/extensions',
 '/root/.ipython']

2) sys.path.append() #將自定義模塊的路徑添加到模塊搜索路徑的集合中,在程序中import調用此路徑下的模塊時,可準確找到
下面爲在/hoem/kiosk/路徑下自定義的模塊hello.py內容:

def fun():
        print "welcome !"

添加:

In [45]: sys.path.append("/home/kiosk")  #將自定義模塊的路徑添加進去

In [46]: sys.path   #查看是否添加成功
Out[46]: 
['',
 '/usr/bin',
 '/usr/lib64/python27.zip',
 '/usr/lib64/python2.7',
 '/usr/lib64/python2.7/plat-linux2',
 '/usr/lib64/python2.7/lib-tk',
 '/usr/lib64/python2.7/lib-old',
 '/usr/lib64/python2.7/lib-dynload',
 '/usr/lib64/python2.7/site-packages',
 '/usr/lib64/python2.7/site-packages/gtk-2.0',
 '/usr/lib/python2.7/site-packages',
 '/usr/lib/python2.7/site-packages/IPython/extensions',
 '/root/.ipython',
 '/home/kiosk']     #添加成功

In [51]: import hello  # 調用自定義模塊

In [52]: hello.fun()   #執行成功
welcome !

3) sys.path.pop() #刪除sys.path中指定模塊路徑,默認刪除最後一個,並返回被刪除的路徑信息

In [55]: sys.path
Out[55]: 
['',
 '/usr/bin',
 '/usr/lib64/python27.zip',
 '/usr/lib64/python2.7',
 '/usr/lib64/python2.7/plat-linux2',
 '/usr/lib64/python2.7/lib-tk',
 '/usr/lib64/python2.7/lib-old',
 '/usr/lib64/python2.7/lib-dynload',
 '/usr/lib64/python2.7/site-packages',
 '/usr/lib64/python2.7/site-packages/gtk-2.0',
 '/usr/lib/python2.7/site-packages',
 '/usr/lib/python2.7/site-packages/IPython/extensions',
 '/root/.ipython',
 '/home/kiosk']

In [56]: sys.path.pop()
Out[56]: '/home/kiosk'

4) sys.getfilesystemencoding() #獲取文件系統使用編碼方式

In [58]: sys.getfilesystemencoding()
Out[58]: 'UTF-8'

5) sys.getdefaultencoding() #獲取系統當前編碼,一般默認爲ascii

In [59]: sys.getdefaultencoding()
Out[59]: 'ascii'

6) sys.platform #獲取當前系統平臺

In [61]: sys.platform
Out[61]: 'linux2'

7) sys.exec_prefix #返回平臺獨立的python文件安裝的位置

In [2]: sys.exec_prefix
Out[2]: '/usr'

8) sys.executtable #返回Python解釋程序路徑

In [3]: sys.executable
Out[3]: '/usr/bin/python2'

9) sys.modules.keys() #返回所有已經導入的模塊列表

10) sys.builtin_module_names #返回python解釋器導入的模塊列表

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章