python处理文件程序v1.1

前一阵子有事,就停更了,今天把我的程序给改进了一下,可以移动文件夹了~现在,我来给大家展示一下我的程序~

源代码:

#! python3.7.8
#处理文件.
#可以读取,写入,删除,移动,复制,附加到文件
#现在删除或复制也可以处理整个文件夹~

import os
import time
import shutil

def main(answer):
    """主函数"""
    if answer == 1:  #读取文件
        print("请输入文件路径及文件名......")
        lujing=input(">>>")
        try:
            with open(lujing) as f_o:
                contents=f_o.read()
            print(contents)
        except:
            print("""[-]error:无法打开文件,错误原因可能是:
            1.路径错误
            2.无此文件
            3.文件编码不是utf-8(之后会改)
            4.其他未列出的错误
            """)
    if answer == 2: #写入文件
        print("请输入文件路径")
        filedir=input(">>>")
        print("请输入文件名(目前后缀只能用txt)")
        filename=input(">>>")
        filedir_and_filename=filedir + filename
        print("请输入内容......")
        neirong=input(">>>")
        try:
            with open(filedir_and_filename,'w') as f_o:
                f_o.write(neirong)
                print("创建文件成功!")
                
        except:
            print("没有此路径,是否为此文件创建新文件夹?")
            print("(回答yes或no)")
            yes_or_no=input(">>>")
            if yes_or_no == 'yes':
                os.makedirs(filedir)
                time.sleep(0.2)
                print("创建文件夹成功!")
          
                with open(filedir_and_filename,'w') as f_o:
                    f_o.write(neirong)
                time.sleep(0.2)
                print("创建文件成功!")
            else:
                print("好的,将不创建文件夹")
    if answer == 3: #附加到文件
        print("请输入文件路径和文件名......")
        fd_and_fn=input(">>>")
        print("请输入内容......")
        the_content=input(">>>")
        
        try:
            with open(fd_and_fn,'a') as f_o:
                f_o.write(f"\n{the_content.lstrip()}")
                time.sleep(0.2)
                print("完成!")
        except:
            print("""
            [-]error:无法附加到文件,原因可能是:
            1.编码不是uff-8
            2.无此文件
            """)
    if a == 4: #复制文件
        print("您是想复制文件还是文件夹?(复制文件答a,文件夹答b)")
        copy_file_answer=input(">>>")
        if copy_file_answer=='a':
            print("请输入要复制的文件的路径和它的文件名......")
            filelujing=input(">>>")
            print("请输入您想要复制到的路径和复制后的文件的的文件名")
            move_filelujing=input(">>>")
            try:
                shutil.copy(filelujing,move_filelujing)
                print("复制成功!")
            except:
                print("[-]error:未能复制")
        elif copy_file_answer=='b':
            print("请输入文件夹路径和文件夹的名字")
            dirlujing=input(">>>")
            print("请输入要复制到的路径和复制后的文件夹的名字")
            moved_wenjianjia_lujing=input(">>>")
            try:
                shutil.copytree(dirlujing,moved_wenjianjia_lujing)
                print("复制成功!")
            except:
                print("[-]error:未能复制")
        else:
            print("无效指令")
    if a == 5: #移动文件
        print("您是想移动文件还是文件夹?(移动文件答a,文件夹答b)")
        move_file_answer=input(">>>")
        if move_file_answer == 'a':
            print("请输入文件路径和文件名......")
            move_ffile_lujing=input(">>>")
            print("请输入移动后的路径和文件名")
            moved_file=input(">>>")
            try:
                shutil.move(move_ffile_lujing,moved_file)
                print("移动成功!")
            except:
                print("移动失败,可能是未找到该文件.")
        elif move_file_answer == 'b':
            print("请输入文件夹路径")
            move_dir_lujing==input(">>>")
            print("请输入移动后的位置")
            moved_dir_lujing=input(">>>")
            try:
                shutil.move(move_dir_lujing,moved_dir_lujing)
                print("移动成功!")
            except:
                print("移动失败,可能是未找到该文件.") 
    if a == 6:#删除文件
        print("这是删除文件!慎用!!!")
        print("您是想删除文件还是文件夹?删除文件回答a,删除文件夹回答b")
        del_file_or_dir=input(">>>")
        if del_file_or_dir == 'a':
            print("请输入您要删除的文件")
            del_file=input(">>>")
            try:
                os.unlink(del_file)
                print("删除成功!")
            except:
                print("发生错误,可能无此文件或文件无法删除")
        elif del_file_or_dir == 'b':
            print("请输入您要删除的文件夹")
            del_dir=input(">>>")
            try:
                shutil.rmtree(del_dir)
                print("删除成功!")
            except:
                print("发生错误,可能无此文件夹或文件夹无法删除")
        else:
            print("无效指令")




show="""
请输入指令,指令如下:
1:读取文件
2:写入文件
3.附加到文件
4.复制文件或文件夹
5.移动文件或文件夹
6.删除文件或文件夹"""
print("""warning!此版本不是最高版本,请去 
https://blog.csdn.net/m0_67885783/article/details/128584767升级""")
print(show.lstrip())
a=int(input(">>>"))
main(a)


            

↑就是我的源代码,如果有不好的地方望大家指出改进,谢谢!!(*^_^*)

  • 8
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 2
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值