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解释器导入的模块列表