0
点赞
收藏
分享

微信扫一扫

Python中sys模块和os模块的小练习

小布_cvg 2022-01-15 阅读 58

适用于模块初学者,挺有意思

1.考察sys.argv

写一个脚本,接收两个参数。

第一个参数:文件
第二个参数:内容
请将第二个参数中的内容写入到 文件(第一个参数)中。
执行脚本: python test.py oldboy.txt 你好

参考答案:

from sys import argv

def func(file,cont):
    with open(file,mode="a",encoding="utf-8") as f:
        f.write(cont)

f1 = argv
func(f1[1],f1[2])

需要注意的是,f1是一个列表,第0个元素是脚本自身,所以索引要从1开始取

2.查看递归的最大次数

import sys
print(sys.getrecursionlimit())

3.请根据path找到obj目录下所有文件的路径,并打印出来。

这个主要考察walk方法的使用,随便找一个文件然后用abspath(),dirname()这些方法返回到上面几层目录然后一遍历就完事

参考答案

import os


path = r"装饰器和模块练习.py"
abs_road = os.path.abspath(path)
for i in range(abs_road.count("\\") - 2):  # 这里有很多方法
    abs_road = os.path.dirname(abs_road)

print(abs_road)
tree = os.walk(abs_road)
for road, folder, file_list in tree:
    for file in file_list:
        print(rf"{road}\{file}")  # 这里用os.path.join()也可
举报

相关推荐

0 条评论