Доступ к этому виду элемента в списке - PullRequest
0 голосов
/ 11 апреля 2020

У меня есть список ["3,2", "4,5", "6,7"], и мне нужно написать код для сравнения каждого номера элемента, а затем сделать что-то в указанном c состоянии. a[0] вернет ["3,2"]. Как я могу получить доступ к 3 и 2 отдельно?

Ответы [ 2 ]

1 голос
/ 11 апреля 2020

Давайте предположим это. У вас есть такой список:

a = ["3,2", "4,25"] 

Конечно, вы можете добраться до таких предметов:

print(a[0]) # 3,2
print(a[0][0]) # 3
print(a[0][2]) # 2
print(a[1][0]) # 4
print(a[1][2]) # 2

Но что вы собираетесь делать, если у вас есть два ди git номер? Вы разделяете строку запятыми.

print(a[0].split(',')[0]) #3
print(a[0].split(',')[1]) #2
print(a[1].split(',')[0]) #4
print(a[1].split(',')[1]) #25

Затем, сравнивая их, не забудьте преобразовать строку (3 или 2) в числа (целые числа), чтобы вы могли сравнить их , Это называется кастингом.

for element in a:
  if int(element.split(',')[0]) > int(element.split(',')[1]):
    print('first is bigger')
  else:
    print('second is bigger')
0 голосов
/ 11 апреля 2020

Для каждого элемента в массиве

Элемент является строкой. Строка имеет метод split.

Я разделяю строку на запятые. Пример:

    string = "1,2"
    result = string.split(',') # Here I split by comma
    print(result) # ['1', '2']

Python обладает большим механизмом распаковки итерируемых элементов:

result = ['1', '2']
left, right = result
# Same as 
#    left = result[0]
#    right = result[1]

print(left)  # '1'
print(right) # '2'

# Now variables left and right store strings
# If you want to make integers:

left  = int(left)
right = int(right)
array = ["3,2", "4,5","6,7"]

for element in array:
    left_num, right_num = element.split(',')

    left_num  = int(left_num)
    right_num = int(right_num)

    print(left_num, right_num)


Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...