Как я могу сделать этот код короче, используя для цикла - PullRequest
0 голосов
/ 30 января 2019

Мне интересно, как я могу сделать этот код короче, используя цикл for, есть какие-нибудь предложения?простите, ребята, простой вопрос

спасибо

if (int(classes[0][0])==1):
    print('icis_0.8_water')
if (int(classes[0][0])==2):
    print('nevia')
if (int(classes[0][0])==3):
    print('Xiaomi')
if (int(classes[0][0])==4):
    print('hyundai_mouse')
if (int(classes[0][0])==5):
    print('peace_stapler')

if (int(classes[0][1])==1):
    print('icis_0.8_water')
if (int(classes[0][1])==2):
    print('nevia')
if (int(classes[0][1])==3):
    print('Xiaomi')
if (int(classes[0][1])==4):
    print('hyundai_mouse')
if (int(classes[0][1])==5):
    print('peace_stapler')

if (int(classes[0][2])==1):
    print('icis_0.8_water')
if (int(classes[0][2])==2):
    print('nevia')
if (int(classes[0][2])==3):
    print('Xiaomi')
if (int(classes[0][2])==4):
    print('hyundai_mouse')
if (int(classes[0][2])==5):
    print('peace_stapler')

Ответы [ 3 ]

0 голосов
/ 30 января 2019
for i in range(len(classes[0])):
  if (int(classes[0][i])==1):
    print('icis_0.8_water')
  if (int(classes[0][i])==2):
    print('nevia')
  if (int(classes[0][i])==3):
    print('Xiaomi')
  if (int(classes[0][i])==4):
    print('hyundai_mouse')
  if (int(classes[0][i])==5):
    print('peace_stapler')

Если вы хотите зациклить массив строк классов, добавьте цикл for снаружи.

0 голосов
/ 30 января 2019

Вы можете попробовать:

results = ['icis_0.8_water', 'nevia', 'Xiaomi', 'hyundai_mouse', 'peace_stapler']
for i in range(3):
    for j in range(1, 6):
        if(int(classes[0][i]) == j):
            print(results[j - 1])

Конечно, вам нужно изменить диапазоны, если у вас есть больше элементов «классы» для проверки, или вы хотите получить более приемлемые результаты (и добавить дополнительный внешний цикл «для» впройти через классы [k] [i] элементов, где «k» меняется).

0 голосов
/ 30 января 2019

Вы можете использовать словарь

d = {
    1: 'icis_0.8_water',
    2: 'nevia',
    3: 'Xiaomi',
    4: 'hyundai_mouse',
    5: 'peace_stapler'
}
print(d[int(classes[0][0])])
print(d[int(classes[0][1])])
print(d[int(classes[0][2])])

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

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