2020-1-11(76)

#230、给出一个文件路径,判断是否存在于本地电脑中,
#如果存在则输出True,否则输出False

import os
def check_path(path):
    if os.path.exists(path):
        print(True)
    else:
        print(False)

check_path("e:\\")
check_path("d:\\2019\\1.txt")

#231、按照阶乘思想,新建多层目录和文件,规则如下:

#输入5,则会生成5级目录,根目录名称为”5的阶乘”,
#二级目录为5的阶乘的值为120,三级目录为4的阶乘为24…,
#五级目录为2的阶乘为2,然后其下文件为1.txt

import os
def func(n):
    result=1
    for i in range(1,n+1):
        result*=i
    return result
    
def create_dir(n):
    if not isinstance(n,int):
        return False
    path="d:\\"+str(n)+"的阶乘"
    try:
        os.mkdir(path)
    except Exception as e:
        print(e)
    os.chdir(path)
    print(os.getcwd())
    if n==1:
        with open("1.txt","w") as fp:
            print("1.txt已创建")
    else:
        path=""
        for i in range(n,1,-1):
            path+=(str(func(i))+"\\")
        os.makedirs(path)
        os.chdir(path)
        with open("1.txt","w") as fp:
            print("1.txt已创建")
    
create_dir(5)
create_dir(3)
create_dir(1)

#232、文件升级操作,在e盘下先手动新建如下目录和文件,
#然后控制台接收输入1,则文件上升1级,即a.txt就不在五级目录下了,而是跑到四级目录下面,
#输入4,则a.txt就在一级目录下面,输入5,则a.txt就在根目录下面

import os
try:
    os.makedirs("d:\\一级目录\\二级目录\\三级目录\\四级目录\\五级目录")
except:
    print("文件已创建,无需重复创建")

try:
    n=int(input("请输入文件上升级数:"))
    if n<=0 or n>5:
        raise
except:
    print("级数输入有误")
    
path="d:\\一级目录\\二级目录\\三级目录\\四级目录\\五级目录\\a.txt"
path_list=path.split("\\")
print(path_list)
file_name=path_list[-1]
os.remove(path)
print(file_name)
path_list=path_list[:-1]
print(path_list)
dest_path="\\".join(path_list[0:len(path_list)-n])
print(dest_path)
with open(dest_path+"\\"+file_name,"w") as fp:
    print("文件%s已上升至%s目录下" %(file_name,dest_path))

#233、同时读写文件,将文件内容为”i am learning gloryroad”读取出来后重新写入到该文件中,
#效果为按空格分割,每个单词均换行

with open("d:\\2019\\1.txt","r+") as fp:
    content=fp.read()
    content_list=content.split(" ")
    print(content_list)
    
    fp.seek(0,0)
    for word in content_list:
        fp.write(word.strip()+"\n")

#234、统计你的e盘下有多少个文件扩展名为txt的文件,
#将统计的数目和找到的txt文件(全路径如”e:\test\a.txt”)打印出来

import os
txt_count=0
for root,dir,file in os.walk("d:\\2019"):
    for f in file:
        if os.path.splitext(f)[1]==".txt":
            txt_count+=1
            print(os.path.join(root,f))
print("txt文件有%s个" %txt_count)
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值