[python] Více proměnných ve smyčce FOR
Zdravím, řeším v Pythonu následující problém: mám dvě proměnné: nazvy = ['jedna', 'dva', 'tri', 'ctyri'] cisla = [1, 2, 3, 4] Potřebuji vytvořit slovník, který bude obsahovat něco takového: vysledek = {'jedna': 1, 'dva': 2, 'tri': 3, 'ctyri': 4} Napadlo mně použít tento způsob s využitím FOR: vysledek = {} for n, c in nazvy, cisla: vysledek[n] = c print vysledek Při zpracování dojde k chybě: ValueError: too many values to unpack Očividně je ten způsob zápisu 'for' špatný. Mám ale pocit, že jsem někde něco podobného viděl. Proto bych se rád zeptal. Dá se toto řešit výše uvedeným způsobem (jen mám někde syntaktickou chybu), anebo jsem úplně vedle a podobná konstrukce v Pythonu nejde? S pozdravem, Vasco ___ Python mailing list Python@py.cz http://www.py.cz/mailman/listinfo/python
Re: [python] V�ce prom�nn�ch ve smy�ce FOR
Na toto sluzi fcia ZIP, ktora spoji n zoznamov a vytvori z toho jeden zoznam n-tic: In [1]: nazvy = ['jedna', 'dva', 'tri', 'ctyri'] In [2]: cisla = [1, 2, 3, 4] In [3]: print zip(nazvy, cisla) [('jedna', 1), ('dva', 2), ('tri', 3), ('ctyri', 4)] Vas cyklus by sa teda dal napisat: vysledek = {} for n, c in zip(nazvy, cisla): vysledek[n] = c print vysledek Jednoduchsie je ale pouzit priamo konstruktor slovnika na konverziu zoznamu dvojic na slovnik: vysledek = dict(zip(nazvy, cisla)) spravi presne to co chcete Jan Janech Vasco wrote: Zdravím, řeším v Pythonu následující problém: mám dvě proměnné: nazvy = ['jedna', 'dva', 'tri', 'ctyri'] cisla = [1, 2, 3, 4] Potřebuji vytvořit slovník, který bude obsahovat něco takového: vysledek = {'jedna': 1, 'dva': 2, 'tri': 3, 'ctyri': 4} Napadlo mně použít tento způsob s využitím FOR: vysledek = {} for n, c in nazvy, cisla: vysledek[n] = c print vysledek Při zpracování dojde k chybě: ValueError: too many values to unpack Očividně je ten způsob zápisu 'for' špatný. Mám ale pocit, že jsem někde něco podobného viděl. Proto bych se rád zeptal. Dá se toto řešit výše uvedeným způsobem (jen mám někde syntaktickou chybu), anebo jsem úplně vedle a podobná konstrukce v Pythonu nejde? S pozdravem, Vasco ___ Python mailing list Python@py.cz http://www.py.cz/mailman/listinfo/python -- Ing. Jan Janech Katedra softverovych technologii Fakulta riadenia a informatiky Zilinska Univerzita ___ Python mailing list Python@py.cz http://www.py.cz/mailman/listinfo/python
Re: [python] Více proměnných ve smyčce FOR
Musíš z toho nejdřív udělat seznam obsahující tuple, než to proženeš forem. Třeba takto: ... for n, c in map(lambda a,b: (a,b), nazvy, cisla): ... Honza 2009/3/1 Vasco vasco@gmail.com: Zdravím, řeším v Pythonu následující problém: mám dvě proměnné: nazvy = ['jedna', 'dva', 'tri', 'ctyri'] cisla = [1, 2, 3, 4] Potřebuji vytvořit slovník, který bude obsahovat něco takového: vysledek = {'jedna': 1, 'dva': 2, 'tri': 3, 'ctyri': 4} Napadlo mně použít tento způsob s využitím FOR: vysledek = {} for n, c in nazvy, cisla: vysledek[n] = c print vysledek Při zpracování dojde k chybě: ValueError: too many values to unpack Očividně je ten způsob zápisu 'for' špatný. Mám ale pocit, že jsem někde něco podobného viděl. Proto bych se rád zeptal. Dá se toto řešit výše uvedeným způsobem (jen mám někde syntaktickou chybu), anebo jsem úplně vedle a podobná konstrukce v Pythonu nejde? S pozdravem, Vasco ___ Python mailing list Python@py.cz http://www.py.cz/mailman/listinfo/python ___ Python mailing list Python@py.cz http://www.py.cz/mailman/listinfo/python
Re: [python] Více proměnných ve smyčce FOR
Díky všem za rady. Funkce zip() se jeví jako nejlepší řešení. Stačilo trošku hledat a našel jsem to i v dokumentaci: http://docs.python.org/library/functions.html?highlight=zip#zip Vasco wrote: Zdravím, řeším v Pythonu následující problém: mám dvě proměnné: nazvy = ['jedna', 'dva', 'tri', 'ctyri'] cisla = [1, 2, 3, 4] Potřebuji vytvořit slovník, který bude obsahovat něco takového: vysledek = {'jedna': 1, 'dva': 2, 'tri': 3, 'ctyri': 4} Napadlo mně použít tento způsob s využitím FOR: vysledek = {} for n, c in nazvy, cisla: vysledek[n] = c print vysledek Při zpracování dojde k chybě: ValueError: too many values to unpack Očividně je ten způsob zápisu 'for' špatný. Mám ale pocit, že jsem někde něco podobného viděl. Proto bych se rád zeptal. Dá se toto řešit výše uvedeným způsobem (jen mám někde syntaktickou chybu), anebo jsem úplně vedle a podobná konstrukce v Pythonu nejde? S pozdravem, Vasco ___ Python mailing list Python@py.cz http://www.py.cz/mailman/listinfo/python
Re: [python] Více proměnných ve smyčce FOR
Vasco napsal(a), dne 1.3.2009 13:39: Zdravím, řeším v Pythonu následující problém: mám dvě proměnné: nazvy = ['jedna', 'dva', 'tri', 'ctyri'] cisla = [1, 2, 3, 4] Potřebuji vytvořit slovník, který bude obsahovat něco takového: vysledek = {'jedna': 1, 'dva': 2, 'tri': 3, 'ctyri': 4} nazvy = ['jedna', 'dva', 'tri', 'ctyri'] cisla = [1, 2, 3, 4] vysledek = {} for n, c in zip(nazvy, cisla): vysledek[n] = c print vysledek -- geon Pavel Kosina ___ Python mailing list Python@py.cz http://www.py.cz/mailman/listinfo/python
Re: [python] Python a VisualBasic 5
.NET nebo VB, pro me je to vsechno M$ ;-) Tomas Dne 26.2.2009 20:01, calis.mar...@seznam.cz napsal(a): Ne, IronPython je pro .NET... http://lmgtfy.com/?q=visual+basic+python tady to najdes... Není to špatná myšlenka propojit Visual Basic (který je snad dobrý jenom na crackování woknousu) s Pythonem.. Původní zpráva Od: Tomas Brabenec konfere...@brabenec.net Předmět: Re: [python] Python a VisualBasic 5 Datum: 25.2.2009 18:47:08 Nesouvisi to s IronPython ? http://www.codeplex.com/Wiki/View.aspx?ProjectName=IronPython Tomas Dne 25.2.2009 17:15, martin jirasek napsal(a): Dobrý den, kdesi jsem se dočetl že Visual Basic v mem případě 5, ale na tom asi nezáleží, dokáže volat objekty z Python scriptů. Zajímalo by mne, jak na to. Obyčejný základ, zbytek snad dohledám. Nevím zda jde o speciální knihovny pro Python script nebo ve Visual Basic pro umožnění těchto operací. Děkuji předem Martin Jirásek ___ Python mailing list Python@py.cz http://www.py.cz/mailman/listinfo/python ___ Python mailing list Python@py.cz http://www.py.cz/mailman/listinfo/python ___ Python mailing list Python@py.cz http://www.py.cz/mailman/listinfo/python ___ Python mailing list Python@py.cz http://www.py.cz/mailman/listinfo/python