我在这个语句的python脚本中出现了无效的语法错误
44 f = open(filename, 'r')
45 return
return
^
SyntaxError: invalid syntax
我不确定这里到底出了什么问题?我是一个蟒蛇新手,所以如果有人能请求帮助,我将非常感激。
我使用的是2.3.4版本
答案 0 :(得分:27)
我遇到了同样的问题。这是我的代码:
def gccontent(genomefile):
nbases = 0
totalbases = 0
GC = 0
for line in genomefile.xreadlines():
nbases += count(seq, 'N')
totalbases += len(line)
GC += count(line, 'G' or 'C')
gcpercent = (float(GC)/(totalbases - nbases)*100
return gcpercent
'return'是无效的语法
我根本无法关闭以下代码的括号:
gcpercent = (float(GC)/(totalbases - nbases)*100
希望这有帮助。
答案 1 :(得分:9)
当我忘记关闭代码上的括号时,返回时出现“无效语法”。
elif year1==year2 and month1 != month2:
total_days = (30-day1)+(day2)+((month2-(month1+1))*30
return (total_days)
返回时语法无效。
((month2-(month1+1))*30 <---- there should be another bracket
((month2-(month1+1)))*30
现在我的代码有效了。
他们应该改进python告诉你是否忘记关闭括号而不是在返回时使用“无效”语法。
答案 2 :(得分:8)
在普通的return语句中获得“无效语法”几乎是不可能的。如果你在函数之外使用它,你会得到'return' outside function
,如果你得到错误的缩进,你会得到IndentationError
等。
我可以在return语句中获得SyntaxError: invalid syntax
的唯一方法是,实际上它根本不会说return
,但是如果它包含非ascii字符,例如{{ 1}}。这给了这个错误。现在,如果没有看到它,你怎么能有这个错误?同样,我能提出的唯一想法是你实际上有缩进,但这个缩进不是空格或制表符。例如,您可以在代码中以某种方式插入不间断的空格。
是的,这可能发生。是的,我遇到过这种情况。是的,你得到retürn
。
答案 3 :(得分:3)
我只是看了这个因为我遇到了同样的问题(计划返回语句中的语法错误无效),而且我在python(第一个月)非常新,所以我不知道我在做什么大部分时间
我发现了我的错误,我忘记了前一行的结尾括号。尝试检查上一行的结尾是否有遗忘的括号或引用?
答案 4 :(得分:2)
通常它是一个括号语法错误。检查错误。
答案 5 :(得分:1)
>>> 45 return
File "<stdin>", line 1
45 return
^
SyntaxError: invalid syntax
>>>
这可以解释一下。它没有解释44 f = open(filename, 'r')
,但我怀疑有人复制并粘贴了45行代码,其中缩进缩进并包含行号。
答案 6 :(得分:0)
我试图通过在“ if”块中返回简单的变量赋值来遇到类似的问题。
elif len(available_spots)==0:
return score=0
那会给我一个语法错误。我只是通过在返回之前添加一条语句来解决它
elif len(available_spots)==0:
score=0
return score
答案 7 :(得分:0)
我有同样的问题。我的问题是,我在return语句中混合了数据类型。例如
Microsoft(R) Test Execution Command Line Tool Version 16.7.0
Copyright (c) Microsoft Corporation.All rights reserved.
Starting test execution, please wait...
A total of 1 test files matched the specified pattern.
warn: Microsoft.AspNetCore.DataProtection.KeyManagement.XmlKeyManager[35]
No XML encryptor configured.Key { 8ad52f98 - 5736 - 4d40 - 85b9 - e758dd2823e4}
may be persisted to storage in unencrypted form.
warn: Microsoft.AspNetCore.DataProtection.KeyManagement.XmlKeyManager[35]
No XML encryptor configured. Key {fd541f11-452b-4089-afd4-5f8cf81c43af} may be persisted to storage in unencrypted form.
[xUnit.net 00:00:46.30][Test Class Cleanup Failure(Project.WebApi.IntegrationTests.Controllers.CommunityPostsControllerTests)] System.ObjectDisposedException
X Project.WebApi.IntegrationTests.Controllers.CommunityPostsControllerTests.GetPostById_ReturnsConfiguredResult [1ms]
Error Message:
[Test Class Cleanup Failure(Project.WebApi.IntegrationTests.Controllers.CommunityPostsControllerTests)]: System.ObjectDisposedException : The CancellationTokenSource has been disposed.
Stack Trace:
at System.Threading.CancellationTokenSource.ThrowObjectDisposedException()
at Hangfire.Pro.Redis.RedisStorage.Dispose()
at Autofac.Core.Disposer.Dispose(Boolean disposing) in / home / appveyor / projects / autofac / src / Autofac / Core / Disposer.cs:line 38
at Autofac.Util.Disposable.Dispose() in / home / appveyor / projects / autofac / src / Autofac / Util / Disposable.cs:line 32
at Autofac.Core.Lifetime.LifetimeScope.Dispose(Boolean disposing) in / home / appveyor / projects / autofac / src / Autofac / Core / Lifetime / LifetimeScope.cs:line 414
at Autofac.Util.Disposable.Dispose() in / home / appveyor / projects / autofac / src / Autofac / Util / Disposable.cs:line 32
at Autofac.Core.Container.Dispose(Boolean disposing) in / home / appveyor / projects / autofac / src / Autofac / Core / Container.cs:line 142
at Autofac.Util.Disposable.Dispose() in / home / appveyor / projects / autofac / src / Autofac / Util / Disposable.cs:line 32
at Autofac.Extensions.DependencyInjection.AutofacServiceProvider.Dispose() in / home / appveyor / projects / autofac - extensions - dependencyinjection / src / Autofac.Extensions.DependencyInjection / AutofacServiceProvider.cs:line 121
at Microsoft.AspNetCore.Hosting.Internal.WebHost.Dispose()
at Microsoft.AspNetCore.Mvc.Testing.WebApplicationFactory`1.Dispose(Boolean disposing)
at Microsoft.AspNetCore.Mvc.Testing.WebApplicationFactory`1.Dispose()
Results File: /home/vsts/work/_temp/_fv-az6-181_2020-11-02_12_27_22.trx
Test Run Failed.
Total tests: 49
Passed: 48
Failed: 1