百度360必应搜狗淘宝本站头条
当前位置:网站首页 > 技术资源 > 正文

Python之文件的搜索以及复制(python如何复制文件)

off999 2024-10-26 12:08 34 浏览 0 评论


1. 程序

输入一个文件夹路径:

搜索此路径下以及子路径下所有以py文件结尾的文件。并存放到列表中。

另外,加上一定的异常的处理,提高代码的健壮性

要求使用两种方法实现:

1、 使用递归

2、 使用python模块里的方法

import os

import os.path

#存储py文件

list_total = []

#存储其他类型文件

list_qita = []

#文件夹路径

def folder_path(path):

#找到当前文件夹下面的文件和文件夹

list = os.listdir(path)

#遍历每个文件和文件夹

for n in list:

old_path = os.path.join(path,n)

index = n.rfind(".")

if os.path.isfile(old_path) and n[index+1:]=="py":

list_total.append(n)

elif os.path.isdir(old_path):

mm = old_path

#递归调用

folder_path(mm)

else:

list_qita.append(n)

#主函数

def main():

m = input("请输入文件夹的路径:").strip()

folder_path(m)

print()

print("py文件有:",end="")

print(list_total)

print()

print("其他文件有:",end="")

print(list_qita)

print()

#入口

main()

2. 程序

完成文件的复制粘贴

要求,模拟windows里的实现。

import os

import os.path

#完成文件路径分割

def file_path():

#C:\Users\Administrator\Desktop\a\a.txt

path_old = input("请输入文件的路径:").strip()

#文件名+后缀

path_index = path_old.rindex('\\')

path_dir = path_old[:path_index]

#path_name = path_old[path_index+1:]

lists = os.listdir(path_dir)

print(lists)

#文件后缀

index = path_old.rindex(".")

dir = path_old[:index]

name = path_old[index:]

#文件名a

filename = path_old[path_index+1:index]

if len(lists)==1:

path_new = dir + " - 副本" + name

else:

num = len(lists)

while num < 20:

if (filename +" - 副本" + name) not in lists:

path_new = dir + " - 副本" + name

elif (filename +" - 副本 " + "(" + str(num) + ")" + name) in lists:

n = 2

while n < len(lists):

if (filename +" - 副本 " + "(" + str(n) + ")" + name) in lists:

n += 1

else:

path_new = dir + " - 副本 " + "(" + str(n) + ")" + name

break

else:

path_new = dir + " - 副本 " + "(" + str(num) + ")" + name

num += 1

break

copy_and_paste_the_files(path_old,path_new)

#文件复制

def copy_and_paste_the_files(old_path,new_path):

old_file = open(old_path,"rb")

new_file = open(new_path,"wb")

while True:

content = old_file.read(1024*1024)

if content:

new_file.write(content)

else:

print("文件复制完成!!!")

break

old_file.close()

new_file.close()

#主程序

def main():

file_path()

#程序入口

main()

相关推荐

电脑如何修改默认浏览器(电脑上怎样修改默认浏览器)

1、按下“windows+i”快捷键打开Windows设置,在设置界面选择系统。2、在系统里左边点击默认程序一项,右边会出现新的选项来。3、右边滚动鼠标滑轮下拉,点击web默认程序,点击选择想要默认打...

如何下载youtube视频(如何下载youtube视频2160p)

这个可以在应用宝中下载,就是在手机上下载一个应用宝,然后在搜索栏里输入软件名字,点击搜索,根据提示下载就可以了。将视频下载到电脑上有几种途径,如果是网络上的,可以下载的视频会设置有下载标记或按钮,点...

深度国际2025最新一期视频(今日关注最新一期的)

1、就算不快乐也不要皱眉,因为你永远不知道谁会爱上你的笑容。2、踏入社会的时候,不要什么话都跟别人讲,你说的是心里话,别人听的是笑话。3、该扔的就扔,该放弃就放弃,从今天起,余生做个俗人,以自己最好的...

华为最新系统版本(华为最新系统版本微信)

鸿蒙3.0。鸿蒙最新版本是3.0系统,相比2.0有着全面提升。尤其是在交互设计,多设备互联互通,流畅度性能,安全属性,用户关怀等方面升级幅度最大,而且升级并非是简单的更新换代,修复了不少鸿蒙2.0版本...

不知道原机主id密码如何激活

答案:如果忘记ID账号和密码,可以尝试以下方法激活手机:1.使用备用邮箱或手机号码:如果您已将备用邮箱或手机号码与您的ID账号绑定,可以使用备用邮箱或手机号码进行身份验证以激活手机。2.联系客服:...

win10安装需要输入产品密钥(win10安装程序要输入产品密匙)

可按照如下方式解决:1.右击桌面左下角的“Windows”按钮,然后点击“命令提示符”项。2.接下来再输入以下命令:slmgr/ipkW269N-WFGWX-YVC9B-4J6C9-T83GX按回...

手机秒变电脑摄像头(手机秒变电脑摄像头怎么设置)

可以的我用过,但是要你手机支持啊国产的山寨机很多都支持这个功能:支持这个功能的手机摄像头有两种工作状态:手机摄像状态和USB连接状态,在手机设置里把手机的摄像头改为USB连接状态,直接插到电脑上就可以...

苹果ipad充不上电是什么原因
  • 苹果ipad充不上电是什么原因
  • 苹果ipad充不上电是什么原因
  • 苹果ipad充不上电是什么原因
  • 苹果ipad充不上电是什么原因
bios没有advanced选项(bios没有advanced选项卡)

华硕主板可开机后点击ESC键或F12键选择AdvancedBIOSFeatures项:你说的只很少几项可以修改,可能是分别设置了CMOS密码和开机密码。而你进入COMS时输的的开机密码!要输入C...

路由器选购技巧(路由器选购技巧大全)

第一,WI-FI协议;我们在购买路由器的时候需要仔细注意分辨WI-FI协议是厂家的噱头还是真正实用的,对上网体验有帮助的功能。目前的Wi-Fi协议已经发展到第6代,既厂商宣传的Wi-Fi...

联想电脑摄像头驱动怎么安装
  • 联想电脑摄像头驱动怎么安装
  • 联想电脑摄像头驱动怎么安装
  • 联想电脑摄像头驱动怎么安装
  • 联想电脑摄像头驱动怎么安装
win7电脑没有声音怎么解决(win7电脑为什么没声音)

1.在我们的win7系统中,突然间没有声音,此时用鼠标右键点击电脑左边的开始菜单,选择“管理”按钮。2.在此页点击系统工具下面的设备管理器,然后展开声音、视频和游戏控制器此选项。3、在该选项当中,...

playstore(playstore app install english)

原文:PlayStore翻译:谷歌的电子市场,或者是指一些虚拟的电子商城。例句:Playstore,restaurant,oricecreamstandtogether.情景游戏...

office2010不激活可以用吗(window10中office不激活可以吗)

可以购买正版授权码激活或激活工具,不激活也可以一直用,但是每一次打开都会弹框。可以使用。因为Office2010不激活后,只会出现一个提醒框,并不影响软件的正常使用。但是未激活的Office2010不...

雨林木风在线重装系统(雨林木风系统安装教程win10)

一,一般雨林木风番茄花园之类的盗版系统重装系统后都是自动激活的,不需要再重新激活。二,如果偶尔系统提示没有激活的话,上系统之家等网站可以下载激活码,按提示激活即可。三,不建议安装雨林木风之类的盗版系统...

取消回复欢迎 发表评论: