Python - Alguien me puede ayudar a entender este código

 
Vista:
sin imagen de perfil
Val: 5
Ha disminuido su posición en 17 puestos en Python (en relación al último mes)
Gráfica de Python

Alguien me puede ayudar a entender este código

Publicado por Ramon (4 intervenciones) el 26/07/2018 20:44:58
El script es el siguiente:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
import sys
 
encoding, errors = sys.argv[1:]
 
languages = [
"Afrikaans", "አማርኛ", "Аҧсшәа", "العربية",
"Aragonés", "Arpetan", "Azərbaycanca", "Bamanankan",
"বাংলা", "Bân-lâm-gú", "Беларуская", "Български",
"Boarisch", "Bosanski", "Буряад", "Català",
"Чӑвашла", "Čeština", "Cymraeg", "Dansk",
"Deutsch", "Eesti", "Ελληνικά", "Español",
"Esperanto", "فارسی", "Français", "Frysk",
"Gaelg", "Gàidhlig", "Galego", "한국어",
"Հայերեն", "हिन्दी", "Hrvatski", "Ido",
"Interlingua", "Italiano", "עברית", "ಕನ್ನಡ",
"Kapampangan", "ქართული", "Қазақша", "Kreyòl ayisyen",
"Latgaļu", "Latina", "Latviešu", "Lëtzebuergesch",
"Lietuvių", "Magyar", "Македонски", "Malti",
"मराठी", "მარგალური", "مازِرونی", "Bahasa Melayu",
"Монгол", "Nederlands", "नेपाल भाषा", "日本語",
"Norsk bokmål", "Nouormand", "Occitan", "Oʻzbekcha/ўзбекча",
"ਪੰਜਾਬੀ", "پنجابی", "پښتو", "Plattdüütsch",
"Polski", "Português", "Română", "Romani",
"Русский", "Seeltersk", "Shqip", "Simple English",
"Slovenčina", "کوردیی ناوەندی", "Српски / srpski",
"Suomi", "Svenska", "Tagalog", "தமிழ்", "ภาษาไทย",
"Taqbaylit", "Татарча/tatarça", "తెలుగు", "Тоҷикӣ",
"Türkçe", "Українська", "اردو", "Tiếng Việt",
"Võro", "文言", "吴语", "ייִדיש", "中文"
]
 
def run(language_list, encoding, errors):
if language_list:
next_lang = language_list.pop()
raw_bytes = next_lang.encode(encoding, errors=errors)
cooked_string = raw_bytes.decode(encoding, errors=errors)
 
print(raw_bytes, "<===>", cooked_string)
 
return run(language_list, encoding, errors)
 
run(languages, encoding, errors)

No entiendo en si el código, pero al ejecutarlo en Poweshell tampoco logro entender que hace se que algo codifica en los distintos idiomas pero no averiguo que el que.
Por favor si usted entiende algo me seria de gran ayuda que me lo explicara.
Gracias
Por si a alguien le interesa este script es el ejercicio 23 del libro python 3 que es la version en español de "Learning Python the Hard Way"
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
Imágen de perfil de xve
Val: 2.239
Plata
Ha mantenido su posición en Python (en relación al último mes)
Gráfica de Python

Alguien me puede ayudar a entender este código

Publicado por xve (1646 intervenciones) el 27/07/2018 10:42:26
Hola Ramon, sin tabular correctamente el código de Python es imposible de entender, ya que no sabemos que instrucciones van dentro de la función y del if...

Puedes publicar tu código bien tabulado?
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
sin imagen de perfil
Val: 5
Ha disminuido su posición en 17 puestos en Python (en relación al último mes)
Gráfica de Python

Alguien me puede ayudar a entender este código

Publicado por Ramon Pastor (4 intervenciones) el 27/07/2018 21:07:11
Perdona en mi editor las tabulaciones estaban bien como ponia en el libro, de nuevo disculpas aqui las pongo correctamente:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
import sys
 
encoding, errors = sys.argv[1:]
 
languages = [
    "Afrikaans", "አማርኛ", "Аҧсшәа", "العربية",
    "Aragonés", "Arpetan", "Azərbaycanca", "Bamanankan",
    "বাংলা", "Bân-lâm-gú", "Беларуская", "Български",
    "Boarisch", "Bosanski", "Буряад", "Català",
    "Чӑвашла", "Čeština", "Cymraeg", "Dansk",
    "Deutsch", "Eesti", "Ελληνικά", "Español",
    "Esperanto", "فارسی", "Français", "Frysk",
    "Gaelg", "Gàidhlig", "Galego", "한국어",
    "Հայերեն", "हिन्दी", "Hrvatski", "Ido",
    "Interlingua", "Italiano", "עברית", "ಕನ್ನಡ",
    "Kapampangan", "ქართული", "Қазақша", "Kreyòl ayisyen",
    "Latgaļu", "Latina", "Latviešu", "Lëtzebuergesch",
    "Lietuvių", "Magyar", "Македонски", "Malti",
    "मराठी", "მარგალური", "مازِرونی", "Bahasa Melayu",
    "Монгол", "Nederlands", "नेपाल भाषा", "日本語",
    "Norsk bokmål", "Nouormand", "Occitan", "Oʻzbekcha/ўзбекча",
    "ਪੰਜਾਬੀ", "پنجابی", "پښتو", "Plattdüütsch",
    "Polski", "Português", "Română", "Romani",
    "Русский", "Seeltersk", "Shqip", "Simple English",
    "Slovenčina", "کوردیی ناوەندی", "Српски / srpski",
    "Suomi", "Svenska", "Tagalog", "தமிழ்", "ภาษาไทย",
    "Taqbaylit", "Татарча/tatarça", "తెలుగు", "Тоҷикӣ",
    "Türkçe", "Українська", "اردو", "Tiếng Việt",
    "Võro", "文言", "吴语", "ייִדיש", "中文"
]
 
def run(language_list, encoding, errors):
    if language_list:
        next_lang = language_list.pop()
        raw_bytes = next_lang.encode(encoding, errors=errors)
        cooked_string = raw_bytes.decode(encoding, errors=errors)
 
        print(raw_bytes, "<===>", cooked_string)
 
        return run(language_list, encoding, errors)
 
run(languages, encoding, errors)
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar