我们如何为以下代码使用列表理解?

How do we use List Comprehension for the below code?

这是给定的代码,我想使用列表理解

    import numpy as np
    
    linear_data = np.array([1,2,3,4,5,6,7,8])
    
    plt.figure()
    xvals = range(len(linear_data))
    plt.bar(xvals, linear_data, width = 0.3)
    
    new_xvals = []

绘制另一组条形图,调整新的 xvals 以弥补绘制的第一组条形图

    for item in xvals:
        new_xvals.append(item+0.3)
    
    plt.bar(new_xvals, exponential_data, width = 0.3 ,color='red')

我写了这行代码,但没有得到想要的输出

    new_xvals = [items for items in xvals new_xvals.append(item+0.3)]

当我在“xvals”之后使用它时,我在 new_xvals.append(item+0.3) 处遇到错误。我该如何实施?

可以使用以下列表理解代码构造列表:

[item+0.3 for item in xvals]

根据你犯的错误,我猜你需要更明确的

    new_xvals = [i+0.3 for i in xvals]

您在代码中犯的错误是试图在插值中附加到列表。

插值是自己创建列表,所以你需要做的就是将它分配给一个变量。