我正在尝试从文本文件中创建Python列表。我想打开文件,读取行,使用public class TestController : Controller
{
public IActionResult Test(TestViewModel model)
{
return View(model);
}
public class TestViewModel
{
public string TestProperty
{
get
{
return "";
}
set
{
return;
}
}
}
}
方法,将它们附加到列表中。这就是我到目前为止所拥有的。它只是打印文本文件:
split
我的文件如下所示:lines = []
folder = open("test.txt")
word = folder.readlines()
for line in word:
var = ()
for line in word:
lines.append(line.strip().split(","))
print (word)
我希望这一点出来:fat cat hat mat sat bat lap
答案 0 :(得分:3)
正如其他评论家所观察到的,变量命名应该提供分配的变量上下文。即使您可以将变量命名为多个名称,但它们应相关!
您可以使用with
语句打开和关闭同一范围内的文件,确保文件对象已关闭(通常是良好做法) 。从那时起,您可以根据lines
分隔符将readlines()
函数返回的list
打印为split()
' '
。
with open("test.txt") as file:
lines = file.readlines()
for line in lines:
print line.split(' ')
示例输出:
档案:fat cat hat mat sat bat lap
>>> ['fat', 'cat', 'hat', 'mat', 'sat', 'bat', 'lap']
答案 1 :(得分:1)
如果您的文件只包含一行,那么您不需要做的工作几乎和您想象的一样多。
str.split
返回一个列表,因此不需要append
个别元素。当你在没有任何参数的情况下调用.split()
时,它会被任何空格(空格,制表符,换行符等)拆分,所以要做你想做的事情就是:
with open("test.txt","r") as f:
mywords = f.read().split()
print(mywords)
打开文件,读取内容,用空格分割,将结果列表存储在名为mywords
的变量中。 (或者你想称之为的任何东西)
请注意,按任何空格分割意味着它将新行与空格相同,只是另一个单词分隔。