对列表进行平方,然后将整个内容修改为空列表

我被要求对一组整数列表进行平方,并将一组整数和浮点数列表立方,然后将这些列表中的每一个修改为两个单独的空列表。


我在 jupyter 上使用 python。我仅限于我们已经学过的东西(重要的一点 - 我已经尝试使用我们还没有学过的函数,教授希望我只限于我们已经涵盖的主题)。我们已经学会了制作列表、测量列表的长度、修改我们的列表以及 for 循环(使用 rang)e 和 while 循环......非常基础的。


x = [2,4,6,8,10,12,14,16,18]

y = [10,8.25,7.5,7,6.5,7,7.5,8.25,10]


# initialize new lists below

xsquared = []


ycubed = []


# loop(s) to compute x-squared and y-cubed below


for item_X in x:

    item_X **= 2


for item_Y in y:

    item_Y **= 3


# Use .append() to add computed values to lists you initialized


xsquared.append(item_X)

print(xsquared)


ycubed.append(item_Y)

print(ycubed)


# Results

实际结果:


[324]

[1000]

预期成绩:


[4, 16, 36, 64, 100.... 324]

[1000, 561.515625, 421.875.... 1000]


有只小跳蛙
浏览 210回答 3
3回答

largeQ

使用列表理解,您可以这样做:x_squared = [item_x**2 for item_x in x]y_cubed = [item_y**3 for item_y in y]

郎朗坤

您只是附加了最后一个结果。如果你想坚持你所涵盖的主题,你应该使用for循环:x = [2,4,6,8,10,12,14,16,18]y = [10,8.25,7.5,7,6.5,7,7.5,8.25,10]xsquared = []ycubed = []for item_X in x:     xsquared.append(item_X ** 2)for item_Y in y:     ycubed.append(item_Y ** 3)但是,最简单的方法是使用列表推导式:x = [2,4,6,8,10,12,14,16,18]y = [10,8.25,7.5,7,6.5,7,7.5,8.25,10]xsquared = [n ** 2 for n in x]ycubed = [n ** 3 for n in x]两种情况下的输出:print(xsquared)print(ycubed)[4, 16, 36, 64, 100, 144, 196, 256, 324][1000, 561.515625, 421.875, 343, 274.625, 343, 421.875, 561.515625, 1000]

慕码人2483693

如果你想避免列表理解或 map()x = [2,4,6,8,10,12,14,16,18] y = [10,8.25,7.5,7,6.5,7,7.5,8.25,10]x2 = []y3 = []for i in x:    x2.append(i*i)for i in y:    y3.append(i**3)
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Python