一 sys

用于python解释器相关的操作

#!/usr/bin/env python
# coding=utf-8
import time
import sys
def view_bar(num, total):
rate = num / total
rate_num = int(rate * 100)
r = '\r%d%%' % (rate_num, )
sys.stdout.write(r)
sys.stdout.flush()
def view_bar2(num, total):
rate = num / total
rate_num = int(rate * 100)
r = '\r%s>%d%%' % ("="*num, rate_num, )
sys.stdout.write(r)
sys.stdout.flush()
for i in range(1, 101):
time.sleep(0.1)
view_bar2(i, 100)

二 os

用于操作系统级别相关的操作

遍历搜索目录
#!/usr/bin/env python
# coding=utf-8
import os
import fnmatch
def all_files(root, patterns, single_level=False, yield_folders=False):
"""
遍历文件夹目录和文件
:param root: 要遍历的文件夹
:param patterns: 搜索模式以";"号隔开
:param single_level: True,遍历一级目录, False, 全部遍历
:param yield_folders: True, 匹配目录, False, 不匹配目录
:yield os.path.join(path, name) 返回路径和文件名
"""
patterns = patterns.split(';')
for path, subdirs, files in os.walk(root):
# 是否匹配目录
if yield_folders:
files.extend(subdirs)
files.sort()
for name in files:
for pattern in patterns:
if fnmatch.fnmatch(name, pattern):
yield os.path.join(path, name)
break
# 只遍历一级目录
if single_level:
break
# for path in all_files('/root/module2/day6', '*.py;*.txt', yield_folders=False, single_level=False):
# print(path)
ret = all_files('/root/module2/day6', '*.py;*.txt', yield_folders=False, single_level=False)
for line in ret:
print(line)

最新文章

  1. C#语言之“中英文混合字符串对齐”的方法
  2. (转)Hibernate事务管理
  3. 为什么需要Bundler
  4. python脚本-开机自动联网
  5. ASP.NET MVC请求处理管道生命周期的19个关键环节(7-12)
  6. Tomcat中xml文件引入各种schma xsd问题原理
  7. Cisco 防止SYN Flood 攻击原理
  8. 聚焦 SQL 数据库活动异地复制
  9. Github 终于开始认真考虑开源项目许可证了
  10. Spring中 bean定义的parent属性机制的实现分析
  11. Python快速排序
  12. Angular页面选项卡切换要注意的toggleClass
  13. python 与redis
  14. 跨平台技术实践案例: 用 reactxp 重写墨刀的移动端
  15. 2019年Web前端最新导航(常见前端框架、前端大牛)
  16. C# System.IO.StreamReader
  17. php优秀框架codeigniter学习系列——CI_URI类学习
  18. VC中BSTR、Char和CString类型的转换
  19. Java -- 异常的捕获及处理 -- Java的异常处理机制
  20. MapReduce部分源码解读(一)

热门文章

  1. FuelPHP 系列(四) ------ Validate 验证
  2. Yii 框架的Rbac [权限控制]
  3. Android Tab类型主界面 Fragment+TabPageIndicator+ViewPager
  4. SVN Update Error: Please execute the 'Cleanup' command
  5. 【Revit API】改变填充区域的填充样式
  6. 前端学习 -- Css -- display和Visibility
  7. POJ 3281 Dining (网络流)
  8. HDU 1611 敌兵布阵 / HRBUST 1794 敌兵布阵(线段树)
  9. pat1001. Battle Over Cities - Hard Version 解题报告
  10. 14.会场安排问题(L4)