章节
问答
课签
笔记
评论
占位
占位

Python读取set元素

由于set里面的元素是没有顺序的,因此我们不能像list那样通过索引来访问。访问set中的某个元素实际上就是判断一个元素是否在set中,这个时候我们可以使用in来判断某个元素是否在set中。
比如,存储了班里同学名字的set。

names = ['Alice', 'Bob', 'Candy', 'David', 'Ellena']
name_set = set(names)

请问'Alice'是班里面的同学吗?

'Alice' in name_set # ==> True

请问'Bobby'是班里面的同学吗?

'Bobby' in name_set # ==>False

请问'bob'是班里面的同学吗?

'bob' in name_set # ==> False

这个时候是否输出了不符合预期的结果?'Bob'是在name_set里面的,为什么输出了False呢?这是因为set元素是区分大小写的,必须大小写完全匹配,才能判断该元素在set里面。

任务

由于name_set不能识别小写的名字,请改进name_set,是小写的名字也能判断在name_set里面。

names = ['Alice', 'Bob', 'Candy', 'David', 'Ellena']
name_set = set(names)
?不会了怎么办

参考答案:

names = ['Alice', 'Bob', 'Candy', 'David', 'Ellena', 'alice', 'bob', 'candy', 'david', 'ellena']
name_set = set(names)
print(name_set) # ==> set(['ellena', 'alice', 'Candy', 'Alice', 'candy', 'Ellena', 'Bob', 'David', 'bob', 'david'])
||
1
2
# Enter a code
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
提交
重置代码
||

请验证,完成请求

由于请求次数过多,请先验证,完成再次请求

加群二维码

打开微信扫码自动绑定

您还未绑定服务号

绑定后可得到

  • · 粉丝专属优惠福利
  • · 大咖直播交流干货
  • · 课程更新,问题答复提醒
  • · 账号支付安全提醒

收藏课程后,能更快找到我哦~

使用 Ctrl+D 可将课程添加到书签

邀请您关注公众号
关注后,及时获悉本课程动态

举报

0/150
提交
取消
全部 精华 我要发布

最新回答 / 李科霆
在Python中,set是一种无序的数据类型,它存储唯一的元素。当你将一个列表转换为集合时,集合中的元素是无序的,这意味着你不能依赖于元素在集合中的特定顺序。因此,当你打印出一个集合时,元素的顺序可能会变化,这取决于Python的具体实现和你使用的Python版本。在你的代码中,打印出的集合看起来似乎是有序的,但实际上这只是一种巧合。如果你再次运行相同的代码,或者在不同的Python环境中运行,输出的顺序可能会有所不同。这是因为集合本身并不保证元素的顺序

最新回答 / 夜9976783
不区分大小写,最简单的方法,把小写也写进去😉

已采纳回答 / 慕后端4297166
names = ['Alice', 'Bob', 'Candy', 'David', 'Ellena']new_names=[]for i in names:  name_lower=i.lower()  new_names.append(name_lower)# print(new_names)if 'bob' in new_names:    print('yep')else:    print('None')

最赞回答 / Nairuohe
in的优先级较高,if后面先判断
y.upper() in x
然后再进行or,所以当y非空时,if后面的条件都是True,永远执行yes

最赞回答 / qq_慕莱坞5194171
如果你问的原题,那么他给的答没啥意思,就是往set里面又加了一串小写的

最新回答 / 慕神7783868
看情况,带括号代表set函数,不带就说明不是.还有你这个问题描述的不太好。总之很简单就是了

最赞回答 / weixin_慕尼黑2063440
可以遍历集合name_set,将name_set中的元素都转化为小写,然后在进行判断.例如查看name1 = 'bob'是否在集合中<...code...>

已采纳回答 / 咚咚呛
下划线没有特别的意思,这是一种变量命名的方式,由于name和set在英语上是两个单词,变量名为了表达名字集合的意思,因而使用下划线将两个单词连接了起来。
全部 我要发布
最热 最新
只看我的

本次提问将花费2个积分

你的积分不足,无法发表

为什么扣积分?

本次提问将花费2个积分

继续发表请点击 "确定"

为什么扣积分?

账号登录 验证码登录

遇到问题
忘记密码

代码语言