#请不要看题目就说加双引号
需求是使用 Python 批量改一些文件名, 所以文件名会在变量里,请问有人结果过类似问题吗,如何解决的?
1
wwqgtxx 2017-12-07 11:27:42 +08:00 via iPhone
我记得 os.walk 能直接把 filename 给分割出来
|
3
roricon 2017-12-07 11:31:12 +08:00
其实没看懂你想问啥, 字符串变量里也没说不让有空格啊. 你能举个例子么?
|
4
Aliencn 2017-12-07 11:32:09 +08:00 2
加双引号
|
6
roricon 2017-12-07 11:45:23 +08:00
|
7
Osk 2017-12-07 11:46:19 +08:00 via Android
os.path.basename()
os.path.dirname() ??? 我没明白为何要手动去转义,又不是 shell 脚本,最多用下 raw string 啊 |
10
roricon 2017-12-07 12:04:23 +08:00 1
>>> import os
>>> folder = "abc bcd" >>> f = open(os.path.join('/tmp', folder, 'test.txt')) >>> f.readline() '' >>> os.rename(os.path.join('/tmp', folder, 'test.txt'), '/tmp/abc bcd/ok.txt') $ ls /tmp/abc\ bcd ok.txt 还是没明白你遇到什么问题了 |
11
Osk 2017-12-07 12:56:27 +08:00 via Android
@roricon 同没明白,open()和 os.rename()处理空格都没问题。难道楼主用了 os.system("rename ")
|
12
guocdfeifei 2019-08-12 17:30:54 +08:00
尝试下用这个方法,我用了下可以哦
opfile = os.path.normpath(opfile) |