为了账号安全,请及时绑定邮箱和手机立即绑定

请问lower()的引用是这样的吗?这段要怎么改才能运行正确呀

请问lower()的引用是这样的吗?这段要怎么改才能运行正确呀_

names = ['Alice', 'Bob', 'Candy', 'David', 'Ellena']

name_set = set(names)

if 'bob' in name_set:

    print('True')

name_lower=name_set.lower()

print(name_lower)

if 'bob' in name_lower:

    print('yep')

else:

    print('None')


——————————————————————————

Traceback (most recent call last):
  File "index.py", line 6, in 
    name_lower=name_set.lower()
AttributeError: 'set' object has no attribute 'lower'


正在回答

4 回答

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')


2 回复 有任何疑惑可以回复我~
#1

真厉害 提问者

原来可以这样,谢谢你
2021-07-23 回复 有任何疑惑可以回复我~

names = ['Alice', 'Bob', 'Candy', 'David', 'Ellena']

name_set = set(names)

#print('BOB' in name_set)

extend_set = set([])

for i in name_set:

extend_set.add(i)

name_lower = i.lower()

extend_set.add(name_lower)

print(extend_set)

name = 'Bob'

if name in extend_set:

print('yes')

else:

print('no')


0 回复 有任何疑惑可以回复我~
names = ['Alice', 'Bob', 'Candy', 'David', 'Ellena']
for i in names:
    name_lower=i.lower()
    names.append(name_lower)
    if len(names) > 10:
        break
    print(names)
if 'bob' in names:
    print('yep')
else:
    print('None')


0 回复 有任何疑惑可以回复我~
#1

慕瓜9057676

改进了一下: names = ['Alice', 'Bob', 'Candy', 'David', 'Ellena'] for i in names: name_lower=i.lower() names.append(name_lower) if len(names) > 10: break name_set = set(names) print(name_set) if 'bob' in name_set: print('yep') else: print('None')
2022-02-12 回复 有任何疑惑可以回复我~

http://img1.sycdn.imooc.com//610395650001d9e905890346.jpg

试着运行了一下上面这位哥们儿的代码,发现这样就没有原来的首字母大写的名字了。所以试着改了一下在for循环里再加一个嵌套的for,将原来的名字也扫进来,个人感觉会更好些!

names = ['Alice', 'Bob', 'Candy', 'David', 'Ellena']

name_extend = [ ]

for each in names:

    name_lower = each.lower( )

    name_extend.append(name_lower)

    for each in names:

        if each not in name_extend:

        name_extend.append(each)


#print(name_extend)

之后用in/not in来进行检测就可以了


0 回复 有任何疑惑可以回复我~
#1

Ruissedella

对了我是直接在IDLE里写的没有用这个网页版的py,所以可能在这个网页版运行不了(但是在IDLE里是可以的!)
2021-07-30 回复 有任何疑惑可以回复我~
#2

慕的地5081305

第二句for each in names:冗余了
2022-04-19 回复 有任何疑惑可以回复我~

举报

0/150
提交
取消

请问lower()的引用是这样的吗?这段要怎么改才能运行正确呀

我要回答 关注问题
意见反馈 帮助中心 APP下载
官方微信