将列表更改为int

时间:2013-11-08 09:23:21

标签: python python-3.x

我完全不知道如何将列表更改为int。

#Creates a list which is populated by whole names and scores
    whole_names = list()
    scores = list()

    for line in lines:
        # Makes each word a seperate object
        objects = line.split(" ")
        # Joins the first and last name of every line and makes them 
          their own seperate objects
        whole_names.append(" ".join(objects[0:2]))
    # Makes the scores of every line an object
        scores.append(objects[2:3])

rect = Rectangle(Point(2, y-50), Point(scores[0],y-25))
rect.setFill("darkgreen")
rect.draw(win)

问题是,Point(得分[0],y-25))不会填充,因为得分[0]是一个列表,而不是一个int,所以它在技术上不能是一个坐标,而是得分的实际值[该列表中的0]将是一个随机数,我不知道它将是什么数字,但它实际上是一个整数。那么如何将得分[0]转换为随机整数?我试过了 得分= int(得分),但根本不起作用。

2 个答案:

答案 0 :(得分:2)

假设scores[0]类似于['10']

Point(int(scores[0][0]), y-25)

然而,这不是正确的解决方案。为了做到更好,请更改此行:

scores.append(objects[2:3])

返回一个序列,对此:

scores.append(objects[2])

返回项目本身。有了这个,你只需要立即将它转换为整数:

Point(int(scores[0]), y-25)

希望这有帮助!

答案 1 :(得分:2)

    scores.append(objects[2:3])

这一行给你一个1元素的序列,这可能不是你想要的。索引而不是切片。

    scores.append(objects[2])