作者ya790206 (残云夺月)
站内Python
标题[问题] 有关for回圈
时间Wed Aug 8 22:02:12 2007
感觉起来这个问题很蠢
这是读取榜单
然後计算该校多少人进这间大学的程式
不过我遇到一个问题
他for回圈只会执行print string 这行
等回圈执行完後才执行print 'ss'
为什麽会这样呢?
我所学告诉我应该print string和print 'ss'
执行次数应该一样
以下是程式码
--------------------------------------------------------
#coding=big5
forCount={}
ftr=open('abcd.txt')
try:
for string in[ftr.read()]:
print string
print 'ss'
a=string.index('国')
b=string.index('学')+3
string=string[a+1:b-a-1]
print string+'x'
if string in forCount:
forCount[string]+=1
else:
forCount.update({string:1})
except Exception:
print "ERROR"
finally:
ftr.close()
print forCountfor (key,value) in forCount.items():
print key+':'+str(value)raw_input()
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 59.116.129.56
※ 编辑: ya790206 来自: 59.116.129.56 (08/08 22:03)
1F:推 subook:我猜 [ftr.read()] 里只有一个东西,也就是整个档案内容 08/08 22:29
2F:→ subook:因此 for 也只执行了一次 08/08 22:32
3F:→ subook:你可能是要用 readline 之类的... 08/08 22:32
4F:→ subook:readlines 08/08 22:34
5F:→ ya790206:的确[ftr.read()] 里只有一个东西,我搞错用法了 08/08 23:07