尝试检测 variable/string 是否为 Python 中的混合大小写

Trying to detect whether a variable/string is mixed case in Python

我正在尝试编写一个简单的程序来检测字符串是大写、小写还是混合大小写。

我试过了x.ismixed但是没用

我也试过了 x == mixed.case

这是代码:

x = input('Loud: ')

if x.isupper():
  print("Quiet:", x.lower())

elif x.ismixed():
  print (x.lower)

else:

  print (x.lower)

错误代码出现

0xf70445e0 处 str 对象的内置方法 lower

输出应该是 x.lower() 而是上面的代码。

Input: HEllO ThEre
Output: hello there.

这不是错误,只是您没有使用 () 调用函数。还有,ismixed不是内置的,得自己写:

def ismixed(s):
    return any(c.islower() for c in s) and any(c.isupper() for c in s)

x = input('Loud: ')

if x.isupper():
  print("Quiet:", x.lower())
elif ismixed(x):
  print(x.lower())
else:
  print(x.lower())

但是,因为您在任何一种情况下都打印 x.lower(),所以您可以去掉整个 elif 块和 ismixed.

使用 x.lower() 而不是 x.lower。 要调用方法,您需要向其添加 ()。 python.

中也没有类似 ismixed 的方法
s="Hello I'm a mixEd Sting"
if s.isupper():
 print("Upper case")
elif s.islower():
 print("Lower case")
else:
 print("mixed case") 
print("Lower Case", s.lower())

lower 是一个你必须使用 () 调用它的方法并且 mixed 不是字符串的函数,你可以简化你的函数如下,因为 elif 是多余的

x = input('Loud: ')
if x.isupper():
    print("Quiet:", x.lower())
else:
    print (x.lower())

应该是x.lower()而不是x.lower。它应该是方法调用而不是成员变量。