2013-11-24 142 views
0
a01:01-24-2011:s1 
a03:01-24-2011:s2 
a02:01-24-2011:s2 
a03:02-02-2011:s2 
a03:03-02-2011:s1 
a02:04-19-2011:s2 
a01:05-14-2011:s2 
a02:06-11-2011:s2 
a03:07-12-2011:s1 
a01:08-19-2011:s1 
a03:09-19-2011:s1 
a03:10-19-2011:s2 
a03:11-19-2011:s1 
a03:12-19-2011:s2 

这是保存在animallog1.txt中。我将如何导入此文件,以便它可用于编写代码,使用上述数据回答问题。 我试图将.txt文件导入python代码

open('C:/animallog1.txt', 'r') 

,但它不工作,staes,有没有这样的文件。可能有人请帮我解决这个问题

+1

@wwii您需要原始字符串作为反斜杠''\''(或者用另一个反斜杠''\\'''来转义它,但不能正斜杠''/'')。 –

回答

1
open('C:\\animallog1.txt', 'r') 
0
  1. 文件是否存在animallog1.txt?

  2. 在Windows上,您应该关心后挡板。

    file = open('c:\\path\\to\\file', 'r') 
    

    file = open(r'c:\path\to\file', 'r')  
    
  3. 检查您的工作空间,u可以使用os.chdir()更改目录c:\

+0

builtins.ImportError:没有名为'animallog1'的模块 – rggod

+0

@ user2994135它怎么可能?这意味着你导入一个不存在的模块,并且你的操作打开一个文件。我想你用'import animallog1'。 – x5lcfd

+0

我确实不行,怎么能解决这个问题? – rggod

0

首先,如果您使用的是Windows,则必须使用反斜杠。有几个方法可以做到这一点:一个是双反斜线正如其他人所指出的,另一种是利用相同osos.path库中的各种常量和函数:

import os 
filename = "C:" + os.sep + "animallog1.txt" 

二,“正确”的方法做到这一点是一个with声明:

with open(filename) as f: #'r' is default 
    for line in f: 
     a, date, s = line.split(":") 
     # ... 

什么with语句的作用是保证该文件被在离开with块封闭。否则,在Python垃圾回收器接近它之前,文件不会关闭。

+0

还有getiing错误: – rggod

+0

保存的文件是Computer-Windows(C:) - User-#我的名字 - 文档,如果这有帮助 – rggod

+0

您是否在与文件相同的位置运行Python脚本? –