fazerse 发表于 2020-7-4 05:46:00

课后题打了激素的数组3,

问题:请先在 IDLE 中获得下边列表的结果,并按照上方例子把列表推导式还原出来。

    >>> list1 = [(x, y) for x in range(10) for y in range(10) if x%2==0 if y%2!=0]

答案给的是
list1 = []
for x in range(10):
    for y in range(10):
      if x%2 == 0:
            if y%2 != 0:
                list1.append((x, y))
------------------------------------------------------------------------------------------------------------------
我做的是 ,
list1 = []
for x in range(10):
    for y in range(10):
      if (x%2 == 0) and(if y%2 !)= 0:
                list1.append((x, y))

结果跑 idle 不出答案, 无解。   不太明白逻辑有何不同, 第一轮x为0 , Y 为0 ,都不符合条件,这时, 答案的做法,是回到那一层?我的 应该是回到第一层For, 为何答案的做法能继续往下跑?
还有就是append()课上讲,只能加一个元素,   然后 这里加个括号又可以两个变量了,那么我 加个括号放N多个逗号隔开变量,或者干脆加个[ ] 隔起来的列表也可以?
那么跟 EXTEND()   区别又是什么勒 ?

Twilight6 发表于 2020-7-4 06:24:19

本帖最后由 Twilight6 于 2020-7-4 06:33 编辑




结果跑 idle 不出答案, 无解。   不太明白逻辑有何不同?

逻辑并没错误,这里是因为你的语法错误导致的,Python 没有这种连续这样用 if 的语法,而且感叹号移到括号外,移动完后输出结果完全相同

错误 :(if y%2 !)= 0 ,改成这样 (y%2 != 0)即可

list1 = []
for x in range(10):
    for y in range(10):
      if (x%2 == 0) and(if y%2 != 0):
                list1.append((x, y))


append()课上讲,只能加一个元素,   然后 这里加个括号又可以两个变量了?那么我 加个括号放N多个逗号隔开变量,或者干脆加个[ ] 隔起来的列表也可以?

(x,y) 这是一个元组,算一个元素,不算两个;只要你是容器类型的值,在同一容器中,容器内的元素个数是相对容器而言的,而对于整个容器来是,这个容器就算一个元素

举个例子:
>>> temp =
>>> temp.append()
>>> print(temp)
]
>>>print(len(temp))
2

列表容器内有 5 个元素,而 假设 temp = ,temp.append() 这就算将这个 整个列表添加到 temp中

使得 temp=]这个时候你对 temp 使用 len(temp) 会发现只返回 2 ,说明 temp 的元素个数就只有2个 ,而且这个元素我们知道一个是整型元素 1,还有个列表元素

那么跟 extend()   区别又是什么勒 ?

extend() 是用来合并两个列表的,在举个刚刚的例子:

>>> temp =
>>> temp.extend()
# 合并了两个列表,而不是将 列表添加到另一个列表中

这里 extend 使得 与 列表合并成为





小甲鱼的铁粉 发表于 2020-7-4 09:24:17

{:10_257:}

fazerse 发表于 2020-7-5 15:56:50

有没有Python·练习册啊, 我现在需要大量的刷题啊,括号部分是誊写错了, if那个错误明显缺乏练习,

嘉岳呀 发表于 2020-7-5 20:10:47

Twilight6 发表于 2020-7-4 06:24
逻辑并没错误,这里是因为你的语法错误导致的,Python 没有这种连续这样用 if 的语法,而且感叹 ...

你太厉害了

嘉岳呀 发表于 2020-7-5 20:11:24

Twilight6 发表于 2020-7-4 06:24
逻辑并没错误,这里是因为你的语法错误导致的,Python 没有这种连续这样用 if 的语法,而且感叹 ...

上次一个难题就是你帮助我的

Twilight6 发表于 2020-7-5 21:03:56

嘉岳呀 发表于 2020-7-5 20:10
你太厉害了

谢谢~
页: [1]
查看完整版本: 课后题打了激素的数组3,