2013-10-27 28 views
0

我正在python的nooby,似乎无法让我的程序做我想做的。我希望用户指定他们想要打开的.gif文件,然后程序将显示他们指定的.gif。不知道我做错了什么。如果有人能帮助我,我将不胜感激。我希望他们指定文件,程序然后将文件重命名为文件夹中的“变量”。打开文件在/path/path/variable.gif打开文件用户指定

files = listdir(".") 

print("List of GIF files in Directory:") 
for f in files: 
    if f[-4:] == ".gif": 
     print(f) 
print("type quit to close the program")  
gif1 = input("type which .gif you would like to modify and press enter:") 
infile = open(gif1, "r") 
outfile= open("gif1.gif", "w") 
os.system('eog {0}'.format(r'home/pictures/gif1')) 
+0

Arrite,我正在处理这个问题。 –

+0

http://docs.python.org/2/library/os.html#os.rename – dm03514

+0

在glob.glob('* .gif')中使用'for f:如果您只需要'.gif',则使用print f'文件。 –

回答

0

称为"variable.gif"尝试下面的代码片段,让我们知道,如果它的工作原理

import os 

files = os.listdir(r'/home/pictures/') 

print("List of GIF files in Directory:") 
for f in files: 
    if f.endswith('.gif'): 
     print(f) 
print("type quit to close the program")  
gif1 = input("type which .gif you would like to modify and press enter:") 

if gif1 in files: 
    os.system(r'eog /home/pictures/{0}'.format(gif1)) 
else: 
    print 'The file name you entered is incorrect 

你张贴不起作用的代码,因为程序EOG预计只有文件名不打开的文件句柄。此外GIF1是由用户输入,因此只有GIF1必须附加到字符串/Home /图片/

当你做对open(filename,'r')一个电话你真正得到的是一个文件句柄。该文件句柄不能作为命令行参数传递给其他程序。另外还有一点就是用/首页/图片替换〜/图片/

+0

它继续说,即使我检查,它在那里指定的位置没有找到gif1文件。但是,它会在同一个文件夹中打开其他文件。感谢您的帮助,我非常感谢。 当我尝试打开gif1.gif时,我还收到一条错误消息,因为它显示截断或不完整的.gif文件。 – user2925055

+0

更新了我的答案 - 由于复制粘贴导致了拼写错误。这些东西现在应该工作 –

+0

'file:///home/pictures/hibiscus.gif'中找不到图片。 这是我在尝试运行该程序时在图像查看器中遇到的错误消息。当我尝试手动打开截断或不完整时,我认为它与gif1.gif文件错误消息有关。 – user2925055

相关问题