拖放脚本不正常

时间:2013-11-17 18:54:51

标签: python

所以,我制作了这个快速的python脚本,它接受一个文件名并修复它以便在linux上使用。

import os
import sys

args = sys.argv

file = args[1].split('\\')
file = file[len(file)-1]

newfile = ''

for char in file:
    if char.isupper():
        newfile += '_' + char.lower()
    elif not char.isalnum() and char != '.':
        newfile += '_'
    else:
        newfile += char

newfile = newfile.lstrip('_')
os.rename(args[1],newfile)

它可以正常工作,但是如果你将文件拖到顶部,它就不会重命名文件。我使用一些print语句进行了调试,如果你拖放它,它确实将文件作为arg接收,但它不会重命名它。任何帮助将不胜感激。

编辑:根据要求添加一些操作系统详细信息。

使用Windows 7,SP1 64位终极版 使用Python 2.7 64位

1 个答案:

答案 0 :(得分:1)

现在更加简洁明了。

import os
import sys

args = sys.argv
path = "\\".join(args[1].split('\\')[:-1])
file_name = args[1].split("\\")[-1]

file_name = file_name.lower()
file_name = file_name.replace(' ','_')

file_name = path+'\\'+file_name
os.rename(args[1],file_name)