如何检查字符串中是否包含随机混合大小写的单词

How to check if a random mixed case word is in a string

我正在尝试检查一行中是否有机器人一词。 (我正在学习 python。对它还是很陌生。)如果单词 'robot' 在一行中,它会打印出一些东西。与 'ROBOT' 相同。但是,我需要知道当机器人在线时如何输出,但在随机混合的情况下,例如 rObOt。这可能吗?看来我需要写出每个组合。我正在使用 Python 3。谢谢 :)。

if ' robot ' in line:
  print("There is a small robot in the line.")
elif ' ROBOT ' in line:
  print("There is a big robot in the line.")
elif 'rOBOt' in line:
  print("There is a medium sized robot in the line.")
else:
  print("No robots here.")

在Python.

中,您可以使用lower()这是一种将字符串转换为小写的字符串方法

所以思路是在你检查了small case 和capital case 之后,如果任意case 中有一个机器人,它会在第三种情况下被拾起。

if ' robot ' in line:
  print("There is a small robot in the line.")
elif ' ROBOT ' in line:
  print("There is a big robot in the line.")
elif ' robot ' in line.lower():
  print("There is a medium sized robot in the line.")
else:
  print("No robots here.")

此外,我注意到您在单词 robot 前后放置了一个 space,我猜您也想为第三个条件放置一个 space。

希望下面的代码能帮到你。

line = "Hello robot RoBot ROBOT"

l = line.split(" ")

exist = False

for word in l:
    if word.upper() == "ROBOT":

        exist = True

        if word.isupper():
            print("There is a big robot in the line.")
        elif word.islower():
            print("There is a small robot in the line.")
        else:
            print("There is a medium sized robot in the line.")

if not exist:
    print("No robots here.")