Python 30课第二题,小甲鱼源代码执行出错,不知什么原因
import osdef search_file(start_dir, target) :
os.chdir(start_dir)
for each_file in os.listdir(os.curdir) :
if each_file == target :
print(os.getcwd() + os.sep + each_file) # 使用os.sep是程序更标准
if os.path.isdir(each_file) :
search_file(each_file, target) # 递归调用
os.chdir(os.pardir) # 递归调用后切记返回上一层目录
start_dir = input('请输入待查找的初始目录:')
target = input('请输入需要查找的目标文件:')
search_file(start_dir, target)
'''
=========== RESTART: C:/Users/Administrator/Documents/exercise3002.py ========== #试了两次 都出错,不知识什么原因
请输入待查找的初始目录:C:\\Users
请输入需要查找的目标文件:record.txt
Traceback (most recent call last):
File "C:/Users/Administrator/Documents/exercise3002.py", line 15, in <module>
search_file(start_dir, target)
File "C:/Users/Administrator/Documents/exercise3002.py", line 10, in search_file
search_file(each_file, target) # 递归调用
File "C:/Users/Administrator/Documents/exercise3002.py", line 10, in search_file
search_file(each_file, target) # 递归调用
File "C:/Users/Administrator/Documents/exercise3002.py", line 10, in search_file
search_file(each_file, target) # 递归调用
File "C:/Users/Administrator/Documents/exercise3002.py", line 6, in search_file
for each_file in os.listdir(os.curdir) :
PermissionError: 拒绝访问。: '.'
>>>
=========== RESTART: C:/Users/Administrator/Documents/exercise3002.py ==========
请输入待查找的初始目录:
=========== RESTART: C:/Users/Administrator/Documents/exercise3002.py ==========
请输入待查找的初始目录:c:
请输入需要查找的目标文件:record.txt
Traceback (most recent call last):
File "C:/Users/Administrator/Documents/exercise3002.py", line 15, in <module>
search_file(start_dir, target)
File "C:/Users/Administrator/Documents/exercise3002.py", line 10, in search_file
search_file(each_file, target) # 递归调用
File "C:/Users/Administrator/Documents/exercise3002.py", line 6, in search_file
for each_file in os.listdir(os.curdir) :
PermissionError: 拒绝访问。: '.'
>>>
''' 本帖最后由 Hoiste 于 2021-5-31 09:29 编辑
是把TXT文件放在C盘了吗,如果是这样的话就换个地方吧,C盘用代码跑权限不够的 Hoiste 发表于 2021-5-31 09:27
是把TXT文件放在C盘了吗,如果是这样的话就换个地方吧,C盘用代码跑权限不够的
我把record.txt
文件放到桌面了,桌面位置是C:\Users\Administrator\Documents,我放到别的位置看一看 我用的是固态硬盘,没有分区,只有一个c盘,那怎么办,电脑还要重新分区吗 huyanmin 发表于 2021-5-31 10:19
我用的是固态硬盘,没有分区,只有一个c盘,那怎么办,电脑还要重新分区吗
那就把TXT文件和.py文件全部右键-属性,然后把权限全勾上试试 Hoiste 发表于 2021-5-31 10:21
那就把TXT文件和.py文件全部右键-属性,然后把权限全勾上试试
麻烦详细说下,都勾选啥,有点乱 huyanmin 发表于 2021-6-1 06:32
麻烦详细说下,都勾选啥,有点乱
就是两个文件都右键-属性-安全的那个标签-编辑,然后就能选择下面的system权限,全部勾上允许,然后再试试能不能访问。毕竟只有一个系统盘的话就不能直接拉到其他盘了。 Hoiste 发表于 2021-6-1 08:51
就是两个文件都右键-属性-安全的那个标签-编辑,然后就能选择下面的system权限,全部勾上允许,然后再试 ...
我试试 system 下的选项有两个,一个是允许选项,是灰色不让更改,另一个是拒绝选项,选哪边呢? huyanmin 发表于 2021-6-1 09:45
system 下的选项有两个,一个是允许选项,是灰色不让更改,另一个是拒绝选项,选哪边呢?
system上面一个有个编辑,点下去,权限就能改了,全部允许了。 Hoiste 发表于 2021-6-1 10:44
system上面一个有个编辑,点下去,权限就能改了,全部允许了。
点完编辑后,还是和原来一样,system 下的选项有两个,一个是允许选项,是灰色不让更改,另一个是拒绝选项,选哪边呢? huyanmin 发表于 2021-6-1 12:37
点完编辑后,还是和原来一样,system 下的选项有两个,一个是允许选项,是灰色不让更改,另一个是拒绝选 ...
不应该只有两个啊,下面有没有完全控制,修改,读取,写入这些东西吗? 本帖最后由 huyanmin 于 2021-6-1 17:39 编辑
Hoiste 发表于 2021-6-1 14:09
不应该只有两个啊,下面有没有完全控制,修改,读取,写入这些东西吗?
#我对record.txt文件操作如下:
system的权限 允许 拒绝#允许 下面方框是灰色勾选不了,拒绝下面可以勾选,不知怎么选择
完全控制 □ □
修改 □ □
读取和修改 □ □
读取 □ □
写入 □ □
特殊权限 □ □ huyanmin 发表于 2021-6-1 17:37
#我对record.txt文件操作如下:
system的权限 允许 拒绝#允许 下面方框是灰色勾选不了, ...
勾选不了,那问题就不好弄了。。试试能不能分盘吧。
页:
[1]