第20行下面的代码存在一些问题。
问题:
该函数返回位于以下位置的50个字符串的列表
文件的中心。
文件有n行,则n / 2为中心。返回长度为50的列表,其中第一行为n / 2 -25,最后一行为n / 2 +25。
示例:
请参阅附录中的open(),close(),readlines()和isinstance()以支持此问题。
限制: 仅允许:while循环,如果语句,函数len(),type(),isinstance(),列表方法append(), 字符串方法split(),format()。关键字elif,否则,return,break,continue,def,self,None,try, 提高,除了,是import sys,以及任何算术或布尔比较运算符
def get_first_and_last_24(filename):
if type(filename)!=str:
raise TypeError('parameter filename is not a string')
try:
f=open(filename)
except FileNotFoundError:
raise FileNotFoundError(filename)
lines=f.readlines()
len(lines)=length
f.close()
if len(lines)==0:
return []
n=[]
index=0
while index<len(lines):
if len(lines)<50:
n.append(lines[index])
index+=1
elif len(lines)>=50
if length%2==0:
if (index/2-25)<index and index < (index/2+25):
n.append(lines[index])
index+=1
elif length%2!=0:
if ((index-1)/2-25)<index and index<((index-1)/2+25):
n.append(lines[index])
index+=1
return n
print(get_first_and_last_24('tfre.tx'))
actual results:
File "3beater.py", line 20
elif len(lines)>=50
^
SyntaxError: invalid syntax