2013-11-08 3 views
2

Я полностью зациклен на том, как изменить список на int.Изменение списка на 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) 

Проблема заключается в том, точка (оценки [0], у-25)) привычка заполнять, потому что оценки [0] является списком, не ИНТ, так что технически не могу быть координаты, но фактическое значение баллов [0] в этом списке будет некоторым случайным числом, я не знаю, какой он будет, но на самом деле это будет целое число. Итак, как мне превратить оценки [0] в случайное целое число? Я пробовал баллов = int (оценки), но это не сработало.

ответ

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) 

Надеюсь, это поможет!

2
scores.append(objects[2:3]) 

Эта линия дает последовательность с 1-элемент, который, вероятно, не то, что вы хотите. Индекс вместо резки.

scores.append(objects[2]) 
Смежные вопросы