Metodo n. 1: utilizzo di sum() + split()
+ comprensione dell`elenco + enumerate()
Combinazione di quanto sopra le funzioni possono essere utilizzate per eseguire questi compiti. In questo caso la suddivisione viene eseguita per trattino e virgola e, di conseguenza, l`intervallo, i numeri vengono estratti e compilati in una lista.
# Codice Python3 per dimostrare come funziona
# Converti intervalli di stringhe in un elenco
# Usa sum ( ) + comprensione elenco + enumerare () + dividere ()
# stringa di inizializzazione
test_str
=
"1, 4-6, 8-10, 11"
# print original line
print
(
"La stringa originale è:"
+
test_str)
# Converti intervalli di stringhe in un elenco
# Utilizzo di sum() + comprensione dell`elenco + enumerate() + split()
res
=
sum
(((
elenco
[
int
(b)
+
c
for
c, b
in
enumera
(a.split (
`-`
))]))
if
` -`
in
test_str.split (
`, `
)), [ ])
# stampa risultato
print
(
"Elenco dopo la conversione da stringa:"
+
str
(res))
Output:
La stringa originale è: 1, 4-6, 8-10, 11 Elenco dopo la conversione da stringa: [1, 4, 5, 6, 8, 9, 10, 11]
Metodo n. 2: utilizzo di map() + diviso ()
+ lambda
Questa attività può essere eseguita anche utilizzando le funzioni di cui sopra. Simile al metodo sopra. L`unica differenza è che utilizziamo le funzioni map() e le espressioni lambda per ridurre la leggibilità complessa. Funziona solo con Python2.
Esci: La stringa originale è: 1, 4-6, 8-10, 11 Elenco dopo la conversione da stringa: [1, 4, 5, 6, 8, 9, 10, 11] Python | Converti intervalli di stringhe in elenco exp: QuestionsPython | Converti intervalli di stringhe in elenco Python functions: QuestionsShopLatest questions Wiki |