附加到 Raw_input

Appending onto Raw_input

在我的代码中,我让用户输入了一个文件名。我想将 .txt 附加到他们输入的末尾,这样他们就不必这样做了。 (filename vs filename.txt)我尝试了几种不同的方法,但这是我当前(不工作)的版本。

from twitter_keys import *

import requests

# Load the UID list

filetype = ".txt"

filename = raw_input("Copy/Paste the Filename here: "), filetype

with open (filename, "r") as myfile:
    data = myfile.read()

print data

查看我的调试器,我发现如何它无法正常工作,但我找不到更好的解决方案。

调试器输出:

print filename
('StrangeBeacons-20180718-144446-followers', '.txt')

我确信有一种简单的方法可以做到这一点,但我在搜索帖子或文档时可能没有问正确的问题。

filename = raw_input("Copy/Paste the Filename here: ") + filetype

添加“+”号

from twitter_keys import *

import requests

# Load the UID list

filetype = ".txt"

filename = raw_input("Copy/Paste the Filename here: ")

with open (filename+filetype, "r") as myfile:
    data = myfile.read()

print data

从您的调试器输入中,您可以清楚地看到文件名正在转换为元组,因为您错误地使用了 ,
您使用 + 连接字符串。

有几种方法。我一般用"{}{}".format(filename,filetype),但你也可以用filename+filetype"%s%s" % (filename, filetype)。您可能需要进行一些验证以确保它们没有文件扩展名,例如

if not "." in filename[-5:]:
           filename = "{}{}".format(filename,filetype)