在Python中理解bools [duplicate]

t8e9dugd  于 2023-04-04  发布在  Python
关注(0)|答案(4)|浏览(124)

此问题在此处已有答案

How can I read inputs as numbers?(10个答案)
两年前关闭了。
我正在尝试学习一些Python,并且有一个关于我作为测试的一个非常小的“程序”的问题。

a = input()
    print(a)
    b = '10'
    if a == b:
       print("Yes")
    else:
       print("No")

这是可行的,但我的问题是为什么b的值必须用引号括起来。

lf3rwulv

lf3rwulv1#

Python input()函数默认接受您给予的任何输入并将其存储为字符串。
为什么B的值要用引号括起来
当然,它不一定要有引号。但是如果你需要条件计算为True,那么你需要引号。所以,由于a是一个字符串,如果你需要a == b计算为True,你需要有带引号的b = '10'
如果你的输入是一个整数,你也可以做a = int(input()),在这种情况下,b=10也可以工作。简单!
因此,以下两个可以被认为在它们给予的结果方面是等价的-

a = input()

b = '10'
if a == b:
    print("Yes")
else:
    print("No")

a = int(input())

b = 10
if a == b:
    print("Yes")
else:
    print("No")
bxpogfeg

bxpogfeg2#

实际上很简单。所有来自用户的输入都被python视为string值。在python中,您只能比较字符串与字符串,整数与整数等...
你也可以这样做

a = int(input())
    print(a)
    b = 10
    if a == b:
       print("Yes")
    else:
       print("No")

在这里,int()将您输入的值转换为整数。

svgewumm

svgewumm3#

input()的值是一个字符串,因此必须将其与字符串进行比较。每个学习编程的人都是从许多问题开始的,这是学习的唯一途径,所以不要为此感到难过。

4uqofj5v

4uqofj5v4#

在python中,默认的输入类型是string。如果你想把它作为int,你必须转换它:

a = int(input()) #change type of input from string to int
print(type(a))
b = 10
if a == b:
    print("Yes")
else:
    print("No")

相关问题