2019独角兽企业重金招聘Python工程师标准>>>

python移动文件:

需求如下:写一个python脚本,执行过程如unix命令一样:

模仿unix移动文件命令,从一个路径移动文件到另一个路径

1、如果不输入参数,显示帮助信息

2、如果输入 -h或者 --help也显示帮助信息

3、输入-i 或者 --ipath '文件夹路径'代表需要移动的文件夹路径

4、输入-o 或者 --opath ‘文件件路径’代表需要移动到的某个文件夹路径

 # -*- coding: utf-8 -*-
import sys , getopt,shutil,os'''
需求如下:**模仿unix移动文件命令,从一个路径移动文件到另一个路径**1、如果不输入参数,显示帮助信息2、如果输入 -h或者 --help也显示帮助信息3、输入-i 或者 --ipath '文件夹路径'代表需要移动的文件夹路径4、输入-o 或者 --opath  ‘文件件路径’代表需要移动到的某个文件夹路径'''def main(argv):orginpath = ''targetpath = ''helpinfo = 'movefile.py -i <inputfile> -o <outputfile>'fileformat =''try:opts,args=getopt.getopt(argv,'hi:o:f:',['ipath=','opath=','format='])except getopt.GetoptError as e :print helpinfosys.exit(2)for opt,arg in opts:if opt == '-h':print helpinfosys.exit()elif opt in ('-i','--ipath'):orginpath = arg elif opt in ('-o','--opath'):targetpath = argelif opt in ('-f','--format'):fileformat =argif orginpath != '' and targetpath != '' and fileformat != '':print '移动的源文件为:',orginpathprint '移动到的目标文件为:',targetpathprint '移动文件的格式为:',fileformatprint '开始移动文件:'for file in  os.listdir(orginpath):if file.endswith(fileformat):shutil.move(orginpath+file,targetpath)    print '移动文件成功',fileif __name__=="__main__":main(sys.argv[1:])

执行如下:

如果想查看帮助文档,命令如下:

这个程序的编写,是重点练习一下:getopt.getopt()的使用方法 当然你可以参考python官网的教程讲解 **Note that: 1、注意编写程序的时候空格使用tab进行缩进,不然经常报一些莫名其妙的错误

2、我本人比较愚钝,所以对于getopt.getopt()理解了好久(2个小时的资料查询),关于如何理解,请参考这里,我自认为这个比官方教程讲的详细一点。

3、另外在查资料的时候,发现一个讲解比较详细的python教程

4、谈谈一点心得:对于编程,只看资料(看书、看视频)不进行实际操作,是一种懒惰。把所思所学通过实际功能的方式开发出来,才是王道。 **

重要参考:

1、非常透彻的教程参考 2、python官网getopt教程 3、值得参考 4、例子参考

转载于:https://my.oschina.net/u/2525142/blog/625462

python移动文件相关推荐

  1. 用python下载文件的若干种方法汇总

    压缩文件可以直接放到下载器里面下载的 you-get 连接 下载任意文件 重点 用python下载文件的若干种方法汇总 写文章 用python下载文件的若干种方法汇总 zhangqibot发表于Met ...

  2. 【python】一个目录里面多个python程序文件,统计一下里面有多少行代码。即分别列出:代码、空行、注释的行数。

    一个目录里面多个python程序文件,统计一下里面有多少行代码.即分别列出:代码.空行.注释的行数. 题目 代码 结果 题目 一个目录里面多个python程序文件,统计一下里面有多少行代码.即分别列出 ...

  3. python 的文件读写方法:read readline readlines wirte   writelines

    read()方法读入整个文件,把整个文件以字符串形式返回. readline()  方法每次只读一行,每运行一次只读一行.如果要读整个文件,需要结合循环判断文件结束. python判断文件末尾的标志是 ...

  4. Python创建目录文件夹

    Python创建目录文件夹 Python对文件的操作还算是方便的,只需要包含os模块进来,使用相关函数即可实现目录的创建. 主要涉及到三个函数 1.os.path.exists(path) 判断一个目 ...

  5. python跨文件全局变量_Python跨文件全局变量的实现方法示例

    前言 在C语言中,由于变量一定是先声明,后使用,所以我们可以清楚的知道,现在使用的变量是全局还是局部,比如: int a = 5; void test(void) { a = 1; // 没有先声明, ...

  6. python 检测文件或文件夹是否存在

    python 检测文件或文件夹是否存在 文件 # 是否存在 import os os.path.exists(test_file.txt) # 是不是文件 import os os.path.isfi ...

  7. python txt文件读写(追加、覆盖)

    python txt文件读写(追加.覆盖) 读取文件每一行 # 读取文件每一行 with open(r"C:\Users\xiahuadong\Desktop\数字人代码\文件行数.txt& ...

  8. python计算文件md5值_用python 正确计算大文件md5 值

    python 计算文件的md5值很方便,但如果只是简单的把文件都入到内存中,大文件会导致问题,一般采用切片的方式分段计算,下面的几个函数可以很好的解决这个问题. 使用 hashlib import h ...

  9. Python下载文件的11种方式

    译者:天天向上    英文原文: https://dzone.com/articles/simple-examples-of-downloading-files-using-python 在本教程中, ...

  10. python ftp文件夹文件递归上传推送

    python ftp文件夹文件递归上传推送 posted on 2018-10-16 17:05 秦瑞It行程实录 阅读(...) 评论(...) 编辑 收藏 转载于:https://www.cnbl ...

最新文章

  1. 【机器学习】改善LBP特征提高SVM的可分性的经验总结(二)
  2. mysql 基础sql
  3. python 工资管理软件_基于[Python]的员工管理系统
  4. 带有控制按钮的图片滚动
  5. javascript 函数属性prototype(转)
  6. pkpm板按弹性计算还是塑性_PKPM中的S\R验算显红原因分析
  7. 应用框架的设计与实现学习手札系列(持续更新)
  8. python 绘图中设置颜色对比强烈的组合
  9. elementui中给input框赋值成功后input框不能进行编辑问题
  10. 阿里云java面试_20个高级Java面试题汇总
  11. python小trick持续更新~
  12. 关于fork()父子进程返回值的问题
  13. 开个怀旧零食店很有前景!
  14. RTL8762DW手环烧录方法
  15. vast显示不出来服务器,VAST实用小知识?
  16. 不用深厚的数学功底也不用深厚的金融知识,用python也能炒股?
  17. 名帖288 董其昌 行书《岳阳楼记》
  18. 关于“primordials is not defined”报错的解决办法 - 解决报错篇
  19. Thread Handler
  20. 示波器表笔旁边的夹子是什么_示波器探头容易忽略的几个问题

热门文章

  1. 控制层远程调用业务层_如何应用数据访问服务层分离系统中的业务层和持久层之间耦合关系...
  2. python代替shell脚本_自动化shell脚本except与python的pexpect模块
  3. php7 返回静态类,PHP7 – 未捕获错误:访问未声明的静态属性
  4. switch -case 理解
  5. vue seo关键词设置_「干货」SEO常识关键词选取及设置方法
  6. 红包随机分配问题php,自己写仿微信红包的随机分配,为什么平均数差距这么大?...
  7. 数据来源渠道及采集工具_【公示公告】涡阳县村级光伏扶贫电站数据采集器更换采购安装项目单一来源采购标前公示...
  8. 必须声明标量变量 @列名
  9. 安装logstash-7.9.3和filebeat-7.9.3
  10. 错误提示:java.lang.IllegalArgumentException解决方法