【原创】python 使用系统模块…

看了development Into python ,用的的import os
这里方便大家理解,直接用 from os import path
当然这个的坏事是不要在自己的代码中再次定义path这个字段.但是有个好处是不用每次都sys.path ...

>>> from os import path
>>> path.expanduser('~')
'C:\\Users\\zhangzhipeng'
【释】expanduser是获取系统当前用户的主目录,MAC无效。
>>> path.join('c:\Python27\music','summary.mp3')
'c:\\Python27\\music\\summary.mp3'
【释】拼接路径和文件名。反正我的不需要转义,而且正反斜线都可以获取到正确的路径,大家最好是按照输出结果的路径进行拼接,以防出错。
>>> path.join(path.expanduser('~'),'summary.mp3')
'C:\\Users\\zhangzhipeng\\summary.mp3'
【释】将用户主目录和文件名进行拼接
>>> m_summary=path.join('c:\Python27\music','summary.mp3')
>>> path.split(m_summary)
('c:\\Python27\\music', 'summary.mp3')
【释】获取一首歌的完整路径名(含文件名),将路径名分割为路径和文件名字。
>>> path.splitext('summary.mp3')
('summary', '.mp3')
【释】将完整文件名分为文件名和后缀
>>> m_name, m_extension = path.splitext('summary.mp3')
>>> m_name, m_extension
('summary', '.mp3')
【释】同上
>>> path.splitext(m_summary)
('c:\\Python27\\music\\summary', '.mp3')
【释】假如给定一个完整的路径含文件名和后缀,这样也可以直接获取到文件类型。不过不建议这么做,因为生成的元组中元素1毫无意义。

>>> from os import listdir as os_dir
>>> os_dir('..')
['config.sys', 'debug', 'Documents and Settings', 'eclipse', 'freefallprotection.log', 'hiberfil.sys', 'Hotfix', 'Intel','Program Files', 'ProgramData', 'Python27','System Volume Information', 'Temp', 'Users', 'Windows']

>>> os_dir('.')
['DLLs', 'Doc', 'include', 'Lib', 'libs', 'LICENSE.txt', 'music', 'mytest', 'NEWS.txt', 'PIL-wininst.log', 'python.exe', 'pythonw.exe', 'README.txt', 'RemovePIL.exe', 'RemoveTrac.exe', 'RemoveVideoCapture.exe'... ]

>>> dirName='C:\Python27'
>>> os_dir(dirName)
['DLLs', 'Doc', 'include', 'Lib', 'libs', 'LICENSE.txt', 'music', 'mytest', 'NEWS.txt', 'PIL-wininst.log', 'python.exe', 'pythonw.exe', 'README.txt', 'RemovePIL.exe', ... ]
【释】可以看到,引入模块可以起一个别名,os_dir 等等(一个有意义的名字即可)。 ".." or '..\'当前目录或文件的父目录的同级别目录和文件;"." or   ".\" 当前目录下同级别目录和文件
>>> os.getcwd()
'C:\\Python27'
【释】getcwd 获取当前工作目录
>>> [f for f in os_dir( os.getcwd()) if path.isfile(path.join( os.getcwd(),f))]
['LICENSE.txt', 'NEWS.txt', 'PIL-wininst.log', 'python.exe', 'pythonw.exe', 'README.txt', 'RemovePIL.exe', 'RemoveTrac.exe', 'RemoveVideoCapture.exe', 'Trac-wininst.log', 'VideoCapture-wininst.log', 'w9xpopen.exe']
>>> [f for f in os_dir( os.getcwd()) if path.isdir(path.join( os.getcwd(),f))]
['DLLs', 'Doc', 'include', 'Lib', 'libs', 'music', 'mytest', 'Scripts', 'tcl', 'Tools']
isfile 判断文件是否为文件
isdir判断文件是否为目录
islink判断文件是否为链接
isabs判断文件是否为绝对路径
ismount判断文件是否为驱动器


原创所有,转载请附明链接。 http://blog.sina.com.cn/s/blog_83dc494d0101bc9u.html
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值