Python 3.x 如何编写返回字符串列表的函数
对第20行下面的代码有一些问题 问题:Python 3.x 如何编写返回字符串列表的函数,python-3.x,Python 3.x,对第20行下面的代码有一些问题 问题: 函数返回一个包含50个字符串的列表,这些字符串位于 文件的中心 一个文件有n行,那么n/2是中心。返回长度为50的列表,其中第一行为n/2-25,最后一行为n/2+25 如果文件有n=502elif长度%2=0:?@Austin第二个在第一个为真时执行。你在第一个中遗漏了冒号。这也是错误的,我认为:len(lines)=length?@Netwave还有什么?程序运行,但只打印给定文件的第一行。您看到这两个elifs:1之间的区别是什么elif len(
函数返回一个包含50个字符串的列表,这些字符串位于 文件的中心 一个文件有n行,那么n/2是中心。返回长度为50的列表,其中第一行为n/2-25,最后一行为n/2+25
- 如果文件有n<50行,则仅返回这些行李>
- 如果文件中没有行,则返回空列表对象
- 如果文件不存在而无法打开,则必须捕获FileNotFoundError对象并抛出一个新的异常FileNotFoundError,该异常的内容为文件名。无法打开文件的任何其他异常都不会被捕获
- 如果参数文件名不是字符串类型,则抛出TypeError异常,异常内容为字符串“参数文件名不是字符串”
- 该文件有200行。返回第75-124行
- 该文件有201行。返回第75-124行(n为奇数)
- 该文件有202行。返回第76-125行
- 该文件有700行。返回第325-374行
- 该文件有10行。返回第1-10行
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
def get_first_和_last_24(文件名):
如果键入(文件名)=str:
raise TypeError('参数文件名不是字符串')
尝试:
f=打开(文件名)
除FileNotFoundError外:
raise FileNotFoundError(文件名)
行=f.读行()
len(线)=长度
f、 关闭()
如果len(行)==0:
返回[]
n=[]
索引=0
而index x这两个elif
s:1之间的区别是什么<代码>elif len(行)>=50
2<代码>elif长度%2=0:?@Austin第二个在第一个为真时执行。你在第一个中遗漏了冒号。这也是错误的,我认为:len(lines)=length
?@Netwave还有什么?程序运行,但只打印给定文件的第一行。您看到这两个elif
s:1之间的区别是什么<代码>elif len(行)>=502<代码>elif长度%2=0:?@Austin第二个在第一个为真时执行。你在第一个中遗漏了冒号。这也是错误的,我认为:len(lines)=length
?@Netwave还有什么?程序运行,但只打印给定文件的第一行