2013-12-07 68 views
0

我是python的新手,所以这可能很简单。但是我试图打印(从txt文件)第一行的第一个字母,然后是第二个字母的第一个字母等等。如果可能的话,你可以添加一个while函数,让程序知道当它检查的行没有任何内容。Python:我如何从TXT的特定行读取单个字母

对不起,我没有编写任何代码来帮助,没有我编写的代码看起来特别有用。

+0

欢迎送tackoverflow。下面是如何去做:在while循环中逐行读取文件(我建议你使用' .readline()')。如果行长度不为零,则使用'line [0]'提取第一个字符。然后继续下一行。 – alexis

回答

3

也许是这样的:

with open(filename, "r") as f: 
    for line in f: 
     print line[0] 

如果你想打破的循环,当你遇到一个空行,然后你这样做:

with open(filename, "r") as f: 
    for line in f: 
     if line.rstrip('\n') == '': 
      break 
     print line[0] 

或许,更Python的方式来测试为空字符串:

if not line.rstrip('\n'): 
    break 
+0

无需增加索引。增量会给你第一行的第一个字符,第二行的第二个字符,... – IceArdor

+0

@IceArdor对不起,我误解了这个问题。 –

+0

感谢IceArdor,Alko和Guy指出我的错误。耻辱的头... –

1
with open('input.txt', 'r') as f: 
    for line in f: 
     if line.strip(): 
      print line[0] 
     else: 
      break 
相关问题