sugar1 发表于 2019-12-23 23:33:10

if 后面的print第一个引号一直标红,什么意思

temp=input("猜猜心里的数字:”)\
guess=int(temp)
if guess==8:
    print("-----------我爱fish------------")
else:
    print("猜错了,萝莉现在想的是8!")
print("游戏结束,不玩啦-----")

jackz007 发表于 2019-12-24 00:30:23

【问题】:中文引号 + 没必要的续行符
temp=input("猜猜心里的数字:”)\

基因突变 发表于 2019-12-24 11:26:13

没看懂你问的是什么意思?

WilsonWolf2333 发表于 2019-12-24 15:12:00

我从IDLE里复制粘贴这些代码,运行后除了if后面的print第一个一直标红,还有报错:
python EOL while scanning string literal
百度查询,一篇文章提到“错误原因是,字符串以 \ 结尾 或者字符串缺少引号。”
做了如下修改:
1.第一行最后一个引号,从中文输入法的”,改成了英文输入法的"
之后不再提示引号标红 和上述报错。但是guess被标红,报错为Syntaxerror - Invalid syntax
2.去掉了第一行代码最后面的\, 就可以正常运行了。

具体原因。。
我个人的理解是中英文双引号不能混用,还有好像没有单独以\作为一行代码结尾的吧。
你是想实现“猜猜心里的数字:”然后自动换行的需求吗?
如果是,第一行代码改成temp=input("猜猜心里的数字:\n")
之后输入的数字就会在第二行显示了。

希望上述回答能帮到你。

zltzlt 发表于 2019-12-24 20:43:58

你的代码中出现了中文引号和 \。将 \ 去掉并把中文引号改成英文引号即可。

temp=input("猜猜心里的数字:")
guess=int(temp)
if guess==8:
    print("-----------我爱fish------------")
else:
    print("猜错了,萝莉现在想的是8!")
print("游戏结束,不玩啦-----")

乘号 发表于 2020-2-28 14:56:25

temp=input("猜猜心里的数字:")
guess=int(temp)
if guess==8:
    print("-----------我爱fish------------")
else:
    print("猜错了,萝莉现在想的是8!")
print("游戏结束,不玩啦-----")


代码给你,重新输进去再试试
页: [1]
查看完整版本: if 后面的print第一个引号一直标红,什么意思