1.关于python文件操作函数shutil.move[src.dst]疑问,src是不是必须指定路径呢.
2.我想知道为什么shutil.move(f,folder_name)里面f..python可以识别f的路径呢?我觉这里没有逻辑而言???因为这里的f没有拼装任何路径. 只是for loop 里面一个 f 变量而已 ..
3.下列代码中文件复制成功,但是从表面上看 f 没有获取任何路径,请问是如何判断的f路径的呢。。
代码示意:
`
import shutil
import os
path = './' #当前路径下有若干个文件或者有若干个文件夹.
files = os.listdir(path)
for f in files:
folder_name = os.path.join('./',f.split('.')[-1])
if not os.path.exists(folder_name):
os.makedirs(folder_name)
shutil.move(f,folder_name)
else:
shutil.move(f,folder_name)
`
这可以理解为文件路径解析问题,适用于所有文件操作,不仅是
shutil.move()
。文件路径可分两类:
即根据此路径可直接找到文件,与进程当前目录无关。
比如 "C:\Windows\system32\user32.dll"
相对路径
实际的文件位置由进程的 当前目录 合成。比如:
在 python 中,使用
os.getcwd()
可获取进程的当前目录,os.path.join()
可合成路径。