Python中的If和Else语句Variable Question

时间:2019-04-08 16:54:33

标签: python python-3.x

我对Python和学习仍然很陌生!我四处搜寻,目前有些帖子对我来说太复杂了。想知道为什么在else函数启动后,下面的car_brandp不加入“而且相当昂贵”的问题?其他第一行可以正常打印,但似乎无法将该消息用作变量?

我收到“无类型”错误

save

3 个答案:

答案 0 :(得分:2)

此行:

car_brandp = print (car_brand + " is just personal taste..")

应该是:

car_brandp = (car_brand + " is just personal taste..")

答案 1 :(得分:1)

“打印”是在控制台中显示内容的过程。一个过程不同于一个函数,因为它不是要返回有价值的东西,而是要执行一些副作用(它会做一些有用的事情,但您不能与它进行交互)。您可能无法分配打印函数的返回值,因为它没有意义。

由于您仍然不熟悉Python,因此最好早点学习正确的习惯。特别地,PEP8包含了大多数Python开发人员遵循的有关样式和约定的有价值的信息。此类建议是可选的,但遵循这些建议可以帮助其他开发人员更好地理解您的代码。

car_brand = input("What is the best car brand? ")

if car_brand == "Range Rover":
    msg = car_brand + " is the best car brand ever!"
else:
    msg = car_brand + " is just personal taste.."
    msg += " and quite expensive..."

print(msg)

答案 2 :(得分:0)

print()就像其他语言中的void函数一样。因此,它起作用,但是却什么也没返回(在Python中,None,在其他语言中类似于null)。

因此,在您的下一行中,您尝试添加

None + "personal taste"

由于未定义stringNone的加法而导致错误

所以,您的选择是

  • 连续打印
  • 连接字符串,例如print( str(brand) + "personal taste")
  • 格式化的字符串,例如print( f'{brand} personal taste')