解决Python列表字符不区分大小写的问题

yipeiwu_com6年前Python基础

有时候,我们需要检测一个元素是否已经存在列表中,并且不区分大小写,如:列表已有元素Mary,那我们想认为MARY也已经被占用。这个例子在实际编程中会用到很多,比如保证网站注册用户独一无二、邮件姓名独一无二等等。

下边列子将实现使得列表元素独一无二功能:

创建一个列表有若干个元素,命名为current_users。

再创建一个包含若干元素的列表,命名为new_users,bi确保其中有一两个元素包含在列表current_users中。

遍历new_users列表中元素,检测是否被使用。如果是,则打印用户名已经被使用;否则,则打印用户名有效。

current_users = ['lily', 'John', 'mary', 'maria', 'admin']
new_users = ['david', 'Admin', 'JOHN', 'emma']
 
for new_user in new_users:
  if new_user.lower() in [current_user.lower() for current_user in current_users]:
    print("设置用户名已被使用,请更换其他用户名")
  else:
    print('您好!您设置的用户名有效')

输出结果为:

您好!您设置的用户名有效
设置用户名已被使用,请更换其他用户名
设置用户名已被使用,请更换其他用户名
您好!您设置的用户名有效

输出结果识别到Admin和JOHN和current_users列表中John和admin相同,达到使得列表元素独一无二(不区分大小写)功能。

以上这篇解决Python列表字符不区分大小写的问题就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持【听图阁-专注于Python设计】。

相关文章

浅析PEP570新语法: 只接受位置参数

最近 PEP 570被接受了,其实要加的这个Positional-Only Parameters原来在内置的C函数上有很多都用到了: In : __builtin__.eval Ou...

Python3 执行系统命令并获取实时回显功能

下面先给大家介绍下Python3 执行系统命令并获取实时回显 最近在改造一些打包的逻辑,原来在 Windows 下是基于批处理制作的,由于批处理用起来不是很方便,一些实时的计算基本无法胜...

使用PIL(Python-Imaging)反转图像的颜色方法

利用PIL将图片转换为黑色与白色反转的图片,下面笔者小白介绍如何实现。 解决方案一: from PIL import Image import PIL.ImageOps #读入图...

Python整数与Numpy数据溢出问题解决

Python整数与Numpy数据溢出问题解决

某位 A 同学发了我一张截图,问为何结果中出现了负数? 看了图,我第一感觉就是数据溢出了。数据超出能表示的最大值,就会出现奇奇怪怪的结果。 然后,他继续发了张图,内容是 print(1...

Python中MySQLdb和torndb模块对MySQL的断连问题处理

在使用python 对wordpress tag 进行细化代码处理时,遇到了调用MySQLdb模块时的出错,由于错误提示和问题原因相差甚远,查看了N久代码也未发现代码有问题。后来问了下师...