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

请帮我看看这个代码呀?else哪里一直报错

s = (['a','b','c'])

L = ['a','b','c','d']

for x in L:

    if x in s:

        s.remove(x)

else:

    s.add(x)

print s

(else:)这里面我是用英文输入打的啊,但是在cmd中一直报错,说   

 File "set.py", line 6

    else:

       ^

SyntaxError: invalid syntax

实在懵了,不知道怎么回事https://img1.sycdn.imooc.com//5b042a760001379a03030259.jpg

正在回答

4 回答

s = set(['a','b','c'])

L = ['a','b','c','d']

for x in L:

    if x in s:

        s.remove(x)

    else:

        s.add(x)

print s


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

python是按缩进来看代码块的  你的else和if的缩进不一样  就不是在一起的 else会被认为是单独的  else之前是没有if的 你之前写的那个不能和else算在一起

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

慕姐8323170 提问者

那我写的时候应该一次性把if else写完再去写if后面的代码吗?还有可不可以帮我看一下第一个回答,那也是我写的,有一点问题
2018-05-23 回复 有任何疑惑可以回复我~
#2

慕姐8323170 提问者

还有else是直接写完if后面的代码以后直接换行以后删除一格它就自动对齐了。 实际上的代码 if 跟else是对齐的,我也不知道怎么粘贴过来就不对齐了,它实际上的效果跟我图片里去一样的
2018-05-23 回复 有任何疑惑可以回复我~
#3

慕姐8323170 提问者

还有else是直接写完if后面的代码以后直接换行以后删除一格它就自动对齐了。 实际上的代码 if 跟else是对齐的,我也不知道怎么粘贴过来就不对齐了,它实际上的效果跟我图片里去一样的
2018-05-23 回复 有任何疑惑可以回复我~

s = set(['a','b','c'])

L = ['a','b','c','d']

for x in L:

    if x in s:

        s.remove(x)

    else:

        s.add(x)

print s


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

慕姐8323170 提问者

额,else下面不是应该空格4次吗?还是没懂我哪里出的问题…
2018-05-22 回复 有任何疑惑可以回复我~

我发现 else: 这里出什么问题了,是我直接从 s.remove(x) 这里enter键以后按了一次 backspace键 就开始输入代码的问题,然后又出现新的问题  说我  s.add(x) 这里也有问题

具体如下:

Traceback (most recent call last):

  File "set.py", line 7, in <module>

    s.add(x)

AttributeError: 'list' object has no attribute 'add'


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

举报

0/150
提交
取消
初识Python
  • 参与学习       758620    人
  • 解答问题       8667    个

学python入门视频教程,让你快速入门并能编写简单的Python程序

进入课程

请帮我看看这个代码呀?else哪里一直报错

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