要移动一些文件,我使用以下代码:
import glob
import os
import shutil
list_of_files = glob.glob('C:/Users/user/staff/*')
latest_file = max(list_of_files, key=os.path.getctime)
print(latest_file)
filename= os.path.basename(latest_file)
shutil.move(latest_file, f"C:\\Users\\user\\test folder\\{filename}"
代码工作,文件已经移动,但我想知道这是否真的很重要:
被移动的文件是这样的:
C:/Users/user/staff\Aug-2021.csv
请注意,斜线现在是向后的而不是向前的。当我的代码变得更复杂(为了最佳实践)时,斜杠的方向是否重要或将来是否重要,或者这是它应该如何工作的?
4条答案
按热度按时间qni6mghb1#
两者都可以,但是混合使用斜杠和反斜杠至少是丑陋的。如果你想做一些独立于操作系统的事情,你可以使用
os.sep
来获得你的操作系统的分离字符。有了这个你可以做一些像
但是你也可以使用
os.path.join
来构建路径,让python来处理这个问题。lf3rwulv2#
正斜杠和反斜杠都是完全有效的路径分隔符。此外,在路径字符串之前包含'r'是一个很好的做法:
表示字符串将被视为原始字符串。你可以在这里看到字符串字面量引用
daolsyd03#
两者的工作原理相同,但尝试使用
\
斜线,以避免0.1的错误机会。我也得到了编码错误,所以在路径之前添加r,例如:r"C:\\Users\\user\\test folder\\{filename}"
。希望这能回答问题。
unguejic4#
case 1:当使用反斜杠时(即直接从文件路径复制的情况下),您可以使用以下代码:
将pandas导入为pd
df=pd.read_csv(r”filepath\filename.csv”)
注意:确保所有斜杠都是反斜杠
**case 2:**使用正斜杠时可以使用以下代码:
将pandas导入为pd
df=pd.read_csv(“filepath/filename.csv”)
注意:确保使用所有正斜杠。在这种情况下,你也可以选择使用r,因为它也可以很好地工作,即
df=pd.read_csv(r“文件路径/文件名.csv”)