1.

  当"print os.path.dirname(__file__)"所在脚本是以完整路径被运行的, 那么将输出该脚本所在的完整路径,比如:

python d:/pythonSrc/test/test.py

那么将输出 d:/pythonSrc/test

当"print os.path.dirname(__file__)"所在脚本是以相对路径被运行的, 那么将输出空目录,比如:

python test.py

那么将输出空字符串

2、想测试一行代码的运行时间,在python中比较方便,可以直接使用timeit:

  >>> import timeit

  #执行命令

  >>> t2 = timeit.Timer('x=range(1000)')

  #显示时间

  >>> t2.timeit()  10.620039563513103

  #执行命令

  >>> t1 = timeit.Timer('sum(x)', 'x = (i for i in range(1000))')

  #显示时间

  >>> t1.timeit()  0.1881566039438201

3、

编程语言在实际使用中可以帮助我们轻松的实现一些特殊的功能需求。在这里我们将会为大家详细介绍一下有关Python文件路径的相关操作技巧,从而方便我们在实际开发中获得一些帮助。

Python文件路径操作方法之1: os.listdir(path) //path为目录

功能相当于在path目录下执行dir命令,返回为list类型。举例:

  1. print os.listdir(’..’)

输出:

  1. [a,b,c,d]

Python文件路径操作方法之2: os.path.walk(path,visit,arg)

path :是将要遍历的目录

visit :是一个函数指针,函数圆形为:

  1. callback(arg,dir,fileList)

其中arg为为传给walk的arg , dir是path下的一个目录,fileList为dir下的文件和目录组成的list

arg:传给visit用的,对walk没有什么作用

举例:

  1. def callback(arg,directory, files):
  2. print directory,
  3. print files,
  4. print arg
  5. print ‘——————–’
  6. os.path.walk(’.',callback, ‘123456′)

输出:

  1. . ['path0704.py', 'temp', '\xc2\xb7\xbe\xb6\xcf\xe0\xb9\
    xd8\xd1\xa7\xcf\xb0.txt'] 123456
  2. ——————–
  3. .\temp ['temp.h', 'temp1'] 123456
  4. ——————–
  5. .\temp\temp1 ['abc.bmp'] 123456

如果想找到某个目录下所有文件,只需要在callback里面,在fileList中找出文件,即可

除此之外,还有一个函数可以用那就是os.walk,看10

Python文件路径操作方法之3:os.path.split(path)

path 为一个路径,输出,把path分成两部分,具体看实例:

  1. print os.path.split(”abc/de.txt”)
  2. (’abc’, ‘de.txt’)
  3. os.path.split(”abc”)
  4. (”, ‘abc’)
  5. print os.path.split(”de/abc/de”)
  6. (’de/abc’, ‘de’)

Python文件路径操作方法之4: os.path.splitext(filename)

把文件名分成文件名称和扩展名

  1. os.path.splitext(abc/abcd.txt)
  2. (’abc/abcd’, ‘.txt’)

Python文件路径操作方法之5: os.path.dirname(path)

把目录名提出来

  1. print os.path.dirname(”abc”)
  2. #输出为空
  3. print os.path.dirname(’abc\def’)
  4. abc

Python文件路径操作方法之6: os.path.basename(filename)

取得主文件名

  1. print os.path.basename(’abc’)
  2. abc
  3. print os.path.basename(’abc.txt’)
  4. abc
  5. print os.path.basename(’bcd/abc’)
  6. abc #这个需要注意不包括目录名称
  7. print os.path.basename(’.')

Python文件路径操作方法之7:os.mkdir(path, [mode])

 

path为目录名: 这里有个要求,只能创建一级目录。比如path为 abc/def 则当前目录下必须存在abc 否则失败

Python文件路径操作方法之8: os.makedirs(path [,mode])

可以创建多级目录

Python文件路径操作方法之9:os.remove(path)

删除一个文件,一定是一个文件

  1. os.removedirs(path) 删除一个目录下所有东西
  2. os.rmdir(path) 删除一个目录,而且一定要空,否则os.errer

Python文件路径操作方法之10:os.walk(path)

遍历path,返回一个对象,他的每个部分都是一个三元组(’目录x’,[目录x下的目录list],目录x下面的文件)

举例:

  1. a = os.walk(’.')
  2. for i in a:
  3. print i

输出:

    1. (’.', ['abc', 'temp'], ['path0704.py', '\xc2\xb7\xbe\xb6\xcf\
      xe0\xb9\xd8\xd1\xa7\xcf\xb0.txt'])

最新文章

  1. 利用css中的background-position定位图片
  2. SQL入门语句之ORDER BY 和GROUP BY
  3. 使用Struts 拦截namespace进行权限控制
  4. NOI2018准备Day19
  5. Android Http请求方法汇总
  6. entity framework 查询
  7. 如何配置jdk和tomcat 转
  8. oc常用正则表达式
  9. windows2003 64位注册码 序列号 激活码
  10. delphi GDI 图片压缩代码 据说是位图缩放保持原图视觉效果最好的算法
  11. j2ee中spring的分布式事务实现及解决方案
  12. [Swift]LeetCode129. 求根到叶子节点数字之和 | Sum Root to Leaf Numbers
  13. double 四舍五入保留一定的位数
  14. codeforces401C
  15. brew 源 & pip 源
  16. React之ant design的table表格序号连续自增
  17. 回车符与换行符问题——C语言
  18. Bzoj3677:树形DP
  19. Linxu磁盘分区
  20. 对于view的深入理解,续篇(一)重写ViewGroup的onDraw

热门文章

  1. selenium测试(Java)-- 验证信息(八)
  2. Graying the black box: Understanding DQNs
  3. Python调用打印机参考例子
  4. sql字符串的拼接 (字符串和二进制,erlang的mysql驱动)
  5. perl 内置操作符 $^O -判断操作系统环境
  6. Winform appconfig修改后的更新问题
  7. 清理SYSAUX表空间的WRH$_LATCH_CHILDREN表
  8. 关于BSTR数据类型
  9. hbase shell中执行list命令报错:ERROR: org.apache.hadoop.hbase.PleaseHoldException: Master is initializing
  10. NHibernate初学五之关联一对多关系