尝试检测是否变量/串是在Python大小写混合

问题描述 投票:-3回答:4

我试着写一个简单的程序,检测一个字符串是否是大写,小写或混合大小写。

我试图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对象的下

输出应该x.lower(),而是与上述代码出现。

Input: HEllO ThEre
Output: hello there.
python python-3.x if-statement grok
4个回答
0
投票

这是不是一个错误,它只是你不打电话与()功能。此外,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的。


0
投票

使用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())

0
投票

应该x.lower()代替x.lower。这应该是一个方法调用不是一个成员变量。


0
投票

较低的是你必须使用()和混合它来调用一个方法是不是字符串的函数,你可以按照以下简化的功能,因为elif是多余的

x = input('Loud: ')
if x.isupper():
    print("Quiet:", x.lower())
else:
    print (x.lower())
© www.soinside.com 2019 - 2024. All rights reserved.