【问题标题】:TypeError with ">=" [closed]TypeError with ">=" [关闭]
【发布时间】:2020-06-26 05:38:00
【问题描述】:

我是一名初级程序员,正在学习 Python。 我正在编写一些简单的程序来学习基础知识。 昨天,我试图用“if-else 语句”编写一个程序,但由于这个错误它不起作用:

-TypeError: '>=' 在 'str' 和 'int' 的实例之间不支持。-

什么意思?

下面是我正在使用的代码:

print(' Insert a value to "a":  ')

a= input()

if a >= 1:
     print('G')     # random letter

【问题讨论】:

  • 该错误清楚地表明您正在尝试将字符串与您无法在 python 中执行的整数进行比较!
  • 那么,“我的字符串大于或等于 1”是什么意思?
  • 欢迎来到 SO!请阅读minimal reproducible example 并相应地编辑您的帖子
  • trying to write a program whit "if-else statement", but it don't work。我们怎么知道您尝试了哪些代码。请贴代码sn-p让我们理解。
  • 现在看看。

标签: python string int typeerror


【解决方案1】:

这个错误意味着你试图比较一个字符串和一个整数的值,这是行不通的。

例如,假设您有string = "hello"integer = 1。你不能说其中一个值大于或等于另一个,所以你会得到一个错误。

【讨论】:

    【解决方案2】:

    其中一个重要的事情是理解函数 input() 是如何工作的。 如评论中所述,您无法将字符串与 int 进行比较,因此如果输入为 int,如何使其正常工作。

    输入函数在 Python 中的工作原理:

    1. 当 input() 函数执行时,程序流程将停止,直到用户给出输入。
    2. 在输出屏幕上要求用户输入输入值的文本或消息显示是可选的,即将在屏幕上打印的提示是可选的。
    3. 无论您输入什么作为输入,输入函数都会将其转换为字符串。如果您输入一个整数值,仍然 input() 函数将其转换为字符串。您需要在代码中使用类型转换将其显式转换为整数。

    我刚刚在您的代码中添加了类型转换以使其正常工作。

    print(' Insert a value to "a":  ')
    
    a= int(input())
    
    if a >= 1:
         print('G')
    
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2019-03-12
      • 1970-01-01
      • 2017-12-04
      • 2021-06-27
      • 2019-09-16
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多