语法错误:尝试发表评论时语法无效

时间:2013-10-21 17:26:31

标签: python comments

我在这里是一个初学者,根本不熟悉任何类型的代码,我认为python将是一个良好的开端。

因此,当我尝试评论多行时,我会收到语法错误。

我在代码中添加了,请帮助我并原谅我明显的错误。我为自己的行为道歉。

print ("no comment")
'''
print ("this is a comment")
print ("so is this")
'''    
print (" not a comment")

7 个答案:

答案 0 :(得分:3)

我在python中执行'''您指定的长字符串可以跨越多行,并返回您放在'''中的值,例如

print(""" Hello

 World
 how are you""") 

会像这样打印出来

 Hello

 World
 how are you 

评论是使用哈希标记完成的,例如,如果您想在代码中发表评论,那么print('hello world') #This will print hello world to the console会注释掉#This will print hello world to the console代码的部分内容,它仍会运行您的代码print('hello world')代码不会打印出您已注释掉的其他行。

不幸的是,除非您使用IDLE或其他优秀的Python编辑器(如Sublime文本)进行批量注释,如果您在IDLE中可以按下,则无法一次注释掉几行代码(例如在HTML中)键盘上的键盘Alt-3注释掉该区域以取消注释您所执行的区域Alt-4,但如果您使用Sublime文本执行control+/,或者您在MAC上执行COMMAND+/ { {1}}这将注释掉和/或取消注释该区域。

我希望这让你的事情变得更轻松!祝你在python中的未来充满希望。你会发现它是一种非常通用的语言!祝你好运!

答案 1 :(得分:1)

您的问题在您的代码中不存在,但可能在您的解释器中。

解释器是运行代码(解释它)并决定如何理解您写入其中的函数的系统。

但是,Python Interpreter 2.7.x和Python 3.x之间有一个很大的变化,其中print的语法曾经是

`print "here is your text"`

现在是

`print("here is your text")`

原因有点模棱两可,但简而言之print已成为功能。这是一个非常简单的概念,掌握非常重要。但希望我的解释能帮助你理解。

此外,当其他人在这里谈论评论,多行评论和文档字符串时,您需要知道的是评论适用于一行多行注释阻止注释许多行工作,而 docstrings 适用于正确的开发人员,并且是标准方式记录您的代码,以便其他人更容易理解和处理。

在此阶段,当有人谈论 docstrings 时,你不应该担心。

答案 2 :(得分:0)

def hello():
    """ 
    This is a doc string
    It has some information about what 
    the function does
    """
    print("Hello")

hello() # Calling hello. This is a comment. Prints "Hello"

也许你在任何函数之外键入它,你可能会得到这样的东西:

print("This is not a comment")
'''
    print('This is a comment')
'''

可能你得到的是这样的东西:

'\n\tprint("This is a comment")\n'

这不是一个错误,完全没问题。

答案 3 :(得分:0)

无论是什么,首先它不是一个简单的评论,但在开发人们使用

'''text''' or """text"""

'''
line 1
line 2
and so on
'''

但是引发SyntaxError

并没有错

首先检查您的Python解释器版本,并做相应的

答案 4 :(得分:0)

我在IndentationError上使用@iCodez。

根据此页面:http://docs.python.org/release/2.5.1/ref/indentation.html 第一行代码不能缩进。

我在ideone上运行代码进行检查,但它出错:http://ideone.com/YTuqaG

    print ("no comment")
    '''
    print ("this is a comment")
    print ("so is this")
    '''    
    print (" not a comment")

尝试从每行中删除前导空格/制表符。

答案 5 :(得分:0)

您发布的内容不会产生语法错误,但请注意空格。这会生成IndentationError: unexpected indent

print ("no comment")
 '''
^ note leading space 
print ("this is a comment")
print ("so is this")
'''    
print (" not a comment")

由于统一缩进,这会产生相同的错误:

    print ("no comment")
    '''
    print ("this is a comment")
    print ("so is this")
    '''    
    print (" not a comment")

但这根本没有错误:

print ("no comment")
'''
print ("this is a comment")
print ("so is this")
   '''
#^^ leading spaces    
print (" not a comment")

答案 6 :(得分:0)

评论未通过'''"""进行,这是一种让字符串跨越多行的方式,例如您通过#发表评论的方式

#print ("hello world")
#this is a comment
#so is this
#I am a comment
print('I still work')

如果你有多行注释掉你必须要做的是使用你的IDE突出显示文本,并依赖于键盘或计算机,你按CONTROL+/COMMAND+/我知道这对于崇高是有用的文本2,但我不确定python的默认IDLE

祝你未来的编码好运!