当您输入input()=='True'时会发生什么

时间:2020-09-28 17:14:26

标签: python-3.x

return promise
    .then(response => {
        if (arkIsEnabled) {                
           return dispatch(createArk(response)); <=== NOTICE THE RETURN HERE
        }
        ...
        return dispatch(operations.getLuft())
          .then(response =>
            dispatch(prepareLuft())
           )
    })
    .catch(error => {
        dispatch(resourceErrorHandler(error));
    })

为什么上面的代码为True和True给出False?

1 个答案:

答案 0 :(得分:2)

young = (input() == 'True')的结果是boolTrueFalse,而不是str型:

>>> young = (input() == 'True')
True                               << user input text
>>> young
True
>>> type(young)
<class 'bool'>
>>> if young: print('young')
...
young

除键入True以外的任何内容都不会与字符串'True'相等,并且会导致bool类型的False

boolTruestr'True'比较总是错误的。只需直接检查布尔值:

if young and famous:
    ...