我想在python中将颜色输入包装在引号中:
def main():
colour = input("please enter a colour")
Run Code Online (Sandbox Code Playgroud)
因此,如果我在输入框中输入红色,它会自动使其变为"红色"
我不确定如何做到这一点,它是否会成为:
def main():
colour = """ + input("please enter a colour") + """
Run Code Online (Sandbox Code Playgroud)
亲切的问候
问题是这不会在语法上传递,因为Python认为第二个"是字符串的结尾(在帖子中突出显示的语法显示了它是如何被解释的).最好的解决方案是使用单引号作为字符串:'"'.
或者,您可以使用反斜杠转义字符(例如,如果您希望使用字符串中的两种类型的引号): "\""
这种插入值的一种很好的方法,而不是很多字符串的连接,是使用str.format:
colour = '"{}"'.format(input("please enter a colour"))
Run Code Online (Sandbox Code Playgroud)
这可以做很多事情,但是在这里,我们只是使用它来插入我们放置的值{}.(注意,在2.7之前,你需要给出插入参数的数量,例如:{0}在这种情况下.过去那个版本,如果你不给一个,Python将只使用下一个值).
请注意,在Python 2.x中,您需要raw_input()而不是input()像2.x一样,后者将输入评估为Python,这可能会导致不好的事情.在3.x中,行为是固定的,因此input()行为与raw_input()2.x中的行为相同.