range() uz sarakstu Python
Bieži vien mēs vēlamies izveidot sarakstu ar nepārtrauktu vērtību, piemēram, diapazonā no 100 līdz 200. Apspriedīsim, kā izveidot sarakstu, izmantojot range()> funkciju.
Vai tas darbosies?
# Create a list in a range of 10-20> My_list> => [> range> (> 10> ,> 20> ,> 1> )]> > # Print the list> print> (My_list)> |
Izvade:
Kā redzam izvadē, rezultāts nav tieši tāds, kādu gaidījām, jo Python neizpako diapazona() funkcijas rezultātu.
Kods #1: Varam izmantot argumentu izpakošanas operatoru t.i. * .
# Create a list in a range of 10-20> My_list> => [> *> range> (> 10> ,> 21> ,> 1> )]> > # Print the list> print> (My_list)> |
Izvade:
Kā redzam izvadē, argumentu izpakošanas operators ir veiksmīgi izpakojis diapazona funkcijas rezultātu.
Kods #2: Mēs varam izmantot extend()> funkcija, lai izpakotu diapazona funkcijas rezultātu.
# Create an empty list> My_list> => []> > # Value to begin and end with> start, end> => 10> ,> 20> > # Check if start value is smaller than end value> if> start # unpack the result My_list.extend(range(start, end)) # Append the last value My_list.append(end) # Print the list print(My_list)> |
Izvade: