我试图编写一个程序,用户输入一个随机文本,如果它有小写字母、大写字母和/或数字,它就会打印出来.

string = input("write something here: ")
if string.isalpha() and not string.isupper():
    print("Has letter")
if string.isupper():
    print("Has only upper letters")
if string.islower():
    print("Has only lower letters")
if string.isdigit():
    print("Has numbers")
if string.isalpha() and string.isdigit():
    print("Has numbers and letters")

推荐答案

当我try 输入数字和字母的组合时,它不会打印出来.

test123这样的输入不会打印出Has numbers and letters,因为函数isalpha判断所有字符是否按字母顺序排列(例如abc而不是abc1),而函数isdigit测试所有字符是否为数字(例如123而不是123x)

这里的解决方案是使用函数str.isalnum(字母数字):

# passes for: abc123, abc, 123
if string.isalnum():
    print("Has numbers and/or letters")

或者,如果要排除它只有数字或字母:

# passes for: abc123
if string.isalnum() and not string.isdigit() and not string.isalpha():
    print("Has both numbers and letters")

Python相关问答推荐

获取2个字节之间的异或

如果在第一行之前不存在其他条件,如何获得满足口罩条件的第一行?

单击Cookie横幅错误并在Selenium中启用搜索栏

在for循环中保存和删除收件箱

计算每月过go x年的平均值

使用Python进行网页抓取,没有页面

pyramid 内部数组中的连续序列-两极

如何使用bs 4从元素中提取文本

使用GEKKO在简单DTE系统中进行一致初始化

重新匹配{ }中包含的文本,其中文本可能包含{{var}

Pytest两个具有无限循环和await命令的Deliverc函数

通过Selenium从页面获取所有H2元素

' osmnx.shortest_track '返回有效源 node 和目标 node 的'无'

如何在python xsModel库中定义一个可选[December]字段,以产生受约束的SON模式

提取相关行的最快方法—pandas

如何启动下载并在不击中磁盘的情况下呈现响应?

在Python 3中,如何让客户端打开一个套接字到服务器,发送一行JSON编码的数据,读回一行JSON编码的数据,然后继续?

如果初始groupby找不到满足掩码条件的第一行,我如何更改groupby列,以找到它?

如何检测鼠标/键盘的空闲时间,而不是其他输入设备?

使用Openpyxl从Excel中的折线图更改图表样式