Re: [python] Používání proměnných (formátovací řetězec)

2017-04-03 Tema obsahu Petr Přikryl
Ahoj všeci,

Jen doplním... Od Pythonu 3.2 lze pro pojmenované věci ve složenkách
používat metodu format_map, kde jméno se bere jako klíč a dosadí se hodnota.

V Python 3.6 se objevila možnost, která se mi původně zdála zbytečná,
ale ukázala se jako docela fajn. Pokud var a log jsou proměnné, pak lze
přímo psát

f'{var}/{log}'

... a je to. V kombinaci s format_map a format (podle toho, kde co mám),
je to docela fajn novinka.

Mějte se fajn,
Petr

__
> Od: Petr Messner 
> Komu: Konference PyCZ 
> Datum: 03.04.2017 11:11
> Předmět: Re: [python] Používání proměnných
>
>Dne 3. dubna 2017 10:36 Ondrej Tuma  napsal(a):
>
>> U format se mi líbí zejména používání názvů:
>>
>> '{var}/{log}'.format(**{'log': 'mujlog', 'var': '/var/log'})
>>
>>
>Proč tak složitě? :) '{var}/{log}'.format(log='mujlog', var='/var/log')
>
>Petr
>
>
>--
>
>___
>Python mailing list
>python@py.cz
>http://www.py.cz/mailman/listinfo/python
>
>Visit: http://www.py.cz
>
>
___
Python mailing list
python@py.cz
http://www.py.cz/mailman/listinfo/python

Visit: http://www.py.cz


Re: [python] Používání proměnných

2017-04-03 Tema obsahu Jakub Vysoky
je to uplne bozi thread :)) time machine. akorat by me zajimalo, jestli
@stibi cte ty odpovedi na svuj dotaz :D :D :D

2017-04-03 10:48 GMT+02:00 Jirka Vejrazka :

> Zavolalo 2007 a chce odpoved na svoji otazku ;-)
>
> 2017-04-03 10:43 GMT+02:00 starenka . :
>
>> Sorka, chtel sem napsat '%(foo)s %(bar)s %(baz)d' % dict(foo='foo',
>> bar='bar', baz=1)
>>
>> ---
>> In Perl you shoot yourself in the foot, but nobody can understand how you
>> did it. Six months later, neither can you. | print 'aknerats'[::-1]
>>
>> 2017-04-03 10:41 GMT+02:00 starenka . :
>>
>>> >> U format se mi líbí zejména používání názvů:
>>>
>>> '{var}/{log}'.format(**{'log': 'mujlog', 'var': '/var/log'})
>>>
>>> Co ale jde i takhle 'foo %(bar)s %(baz)s %(baz)d' % dict(foo='foo',
>>> bar='bar', baz=1)
>>> ---
>>> In Perl you shoot yourself in the foot, but nobody can understand how
>>> you did it. Six months later, neither can you. | print 'aknerats'[::-1]
>>>
>>> 2017-04-03 10:36 GMT+02:00 Ondrej Tuma :
>>>
 Ahoj,

 ještě doplním, kolega kdysi testoval různé rychlosti spojování stringů
 s tím, že v každé verzi (i jednotlivé verze Python 2.x) se rychlosti
 lišily, takže to asi nemá moc cenu řešit.

 Sám používám + buď na spojování 2 max tří stringů. Ale spíš jen jako
 jeho další rozšiřování:

 log_file += '/mujlog'

 Zejména pokud jde o vkládání někam do středu tak pak už %s nebo format,
 který má opravdu mnoho krásných možností:

 log_file = '/var/%s/mujlog' % 'log'

 U format se mi líbí zejména používání názvů:

 '{var}/{log}'.format(**{'log': 'mujlog', 'var': '/var/log'})

 Ondra

 V Fri, 31 Mar 2017 14:00:08 +0200
 Dan Pressl  napsáno:

 > Ahoj,
 >
 > odpověď je trochu složitější. Pokud máš řetězec, který chceš
 > vytisknout klasickým způsobem (print) tak je doporučovaná cesta:
 >
 > >>> x = 'Martin'
 > >>> print 'Ahoj {}'.format(x)
 > Ahoj Martin
 >
 > s tím, že format je nástroj, který umí hodně věcí (pokročilé
 > formátování, kontrola datovým typů apod.):
 >
 > >>> print '{:>3s}% {:.1f}\n{:>3s}% {:d}'.format('5', 3.14, '95', 42)
 >   5% 3.1
 >  95% 42
 >
 > a v Python 3 už by se jinak formátovat nemělo. Více informací najdeš
 > tady: https://pyformat.info/
 >
 > Pokud ale používáš Pythoní modul logging, tak by jsi měl používat:
 >
 > >>> import logging
 > >>> logging.info('Ahoj %s', 'Martine')
 >
 > protože pak můžeš přistupovat k jednotlivým parametrům u logů. Více
 > info najdeš na:
 >
 > https://docs.python.org/3/library/logging.html#logging.LogRecord
 >
 > 2007-02-25 12:29 GMT+01:00 :
 >
 > > Zdravím. Mám dotaz na to, jak pracujete s proměnnými. Jestli
 > > používáte přímo název proměnné:
 > >
 > > test = 'svete'
 > >
 > > print 'ahoj ' + test
 > >
 > > Nebo zápis přes % :
 > >
 > > print 'ahoj %s' % test
 > >
 > > % se mi líbí, je fajn v tom, že můžu použít %i , %d, .., formátování
 > > výstupu, atd. Je tam nějaké zásadní 'ale' ?
 > >
 > > ___
 > > Python mailing list
 > > python@py.cz
 > > http://www.py.cz/mailman/listinfo/python
 > >
 > > Visit: http://www.py.cz
 > >
 >
 >
 >



 --
 Ondřej Tůma 
 www: http://ipv6.mcbig.cz   jabber: mc...@jabber.cz   twitter: mcbig_cz

 ___
 Python mailing list
 python@py.cz
 http://www.py.cz/mailman/listinfo/python

 Visit: http://www.py.cz

>>>
>>>
>>
>> ___
>> Python mailing list
>> python@py.cz
>> http://www.py.cz/mailman/listinfo/python
>>
>> Visit: http://www.py.cz
>>
>
>
> ___
> Python mailing list
> python@py.cz
> http://www.py.cz/mailman/listinfo/python
>
> Visit: http://www.py.cz
>



-- 
Jakub Vysoky

mob: +420 605 852 377
jab: jakub.vys...@gmail.com
twit: https://twitter.com/kvbik
___
Python mailing list
python@py.cz
http://www.py.cz/mailman/listinfo/python

Visit: http://www.py.cz

Re: [python] Používání proměnných

2017-04-03 Tema obsahu Ondrej Tuma
Jj,

pravda, říkal sem si že to musí jít jednodušeji, a jak sem ten mail
odeslal, tak sem to našel :-)

V Mon, 3 Apr 2017 11:11:21 +0200
Petr Messner  napsáno:

> Dne 3. dubna 2017 10:36 Ondrej Tuma  napsal(a):
> 
> > U format se mi líbí zejména používání názvů:
> >
> > '{var}/{log}'.format(**{'log': 'mujlog', 'var': '/var/log'})
> >
> >
> Proč tak složitě? :) '{var}/{log}'.format(log='mujlog',
> var='/var/log')
> 
> Petr



-- 
Ondřej Tůma 
www: http://ipv6.mcbig.cz   jabber: mc...@jabber.cz   twitter: mcbig_cz


pgpppvmxDrpy0.pgp
Description: Digitální podpis OpenPGP
___
Python mailing list
python@py.cz
http://www.py.cz/mailman/listinfo/python

Visit: http://www.py.cz

Re: [python] Používání proměnných

2017-04-03 Tema obsahu Petr Messner
Dne 3. dubna 2017 10:36 Ondrej Tuma  napsal(a):

> U format se mi líbí zejména používání názvů:
>
> '{var}/{log}'.format(**{'log': 'mujlog', 'var': '/var/log'})
>
>
Proč tak složitě? :) '{var}/{log}'.format(log='mujlog', var='/var/log')

Petr
___
Python mailing list
python@py.cz
http://www.py.cz/mailman/listinfo/python

Visit: http://www.py.cz

Re: [python] Používání proměnných

2017-04-03 Tema obsahu Jirka Vejrazka
Viz mail od ViNyLa minuly tyden - muze za to upgrade news demona nebo
neceho okolo.

2017-04-03 10:50 GMT+02:00 starenka . :

> Hehe, a jo. Nechapu, proc to prislo tedko do mailu...
>
> ---
> In Perl you shoot yourself in the foot, but nobody can understand how you
> did it. Six months later, neither can you. | print 'aknerats'[::-1]
>
> 2017-04-03 10:48 GMT+02:00 Jirka Vejrazka :
>
>> Zavolalo 2007 a chce odpoved na svoji otazku ;-)
>>
>> 2017-04-03 10:43 GMT+02:00 starenka . :
>>
>>> Sorka, chtel sem napsat '%(foo)s %(bar)s %(baz)d' % dict(foo='foo',
>>> bar='bar', baz=1)
>>>
>>> ---
>>> In Perl you shoot yourself in the foot, but nobody can understand how
>>> you did it. Six months later, neither can you. | print 'aknerats'[::-1]
>>>
>>> 2017-04-03 10:41 GMT+02:00 starenka . :
>>>
 >> U format se mi líbí zejména používání názvů:

 '{var}/{log}'.format(**{'log': 'mujlog', 'var': '/var/log'})

 Co ale jde i takhle 'foo %(bar)s %(baz)s %(baz)d' % dict(foo='foo',
 bar='bar', baz=1)
 ---
 In Perl you shoot yourself in the foot, but nobody can understand how
 you did it. Six months later, neither can you. | print 'aknerats'[::-1]

 2017-04-03 10:36 GMT+02:00 Ondrej Tuma :

> Ahoj,
>
> ještě doplním, kolega kdysi testoval různé rychlosti spojování stringů
> s tím, že v každé verzi (i jednotlivé verze Python 2.x) se rychlosti
> lišily, takže to asi nemá moc cenu řešit.
>
> Sám používám + buď na spojování 2 max tří stringů. Ale spíš jen jako
> jeho další rozšiřování:
>
> log_file += '/mujlog'
>
> Zejména pokud jde o vkládání někam do středu tak pak už %s nebo format,
> který má opravdu mnoho krásných možností:
>
> log_file = '/var/%s/mujlog' % 'log'
>
> U format se mi líbí zejména používání názvů:
>
> '{var}/{log}'.format(**{'log': 'mujlog', 'var': '/var/log'})
>
> Ondra
>
> V Fri, 31 Mar 2017 14:00:08 +0200
> Dan Pressl  napsáno:
>
> > Ahoj,
> >
> > odpověď je trochu složitější. Pokud máš řetězec, který chceš
> > vytisknout klasickým způsobem (print) tak je doporučovaná cesta:
> >
> > >>> x = 'Martin'
> > >>> print 'Ahoj {}'.format(x)
> > Ahoj Martin
> >
> > s tím, že format je nástroj, který umí hodně věcí (pokročilé
> > formátování, kontrola datovým typů apod.):
> >
> > >>> print '{:>3s}% {:.1f}\n{:>3s}% {:d}'.format('5', 3.14, '95', 42)
> >   5% 3.1
> >  95% 42
> >
> > a v Python 3 už by se jinak formátovat nemělo. Více informací najdeš
> > tady: https://pyformat.info/
> >
> > Pokud ale používáš Pythoní modul logging, tak by jsi měl používat:
> >
> > >>> import logging
> > >>> logging.info('Ahoj %s', 'Martine')
> >
> > protože pak můžeš přistupovat k jednotlivým parametrům u logů. Více
> > info najdeš na:
> >
> > https://docs.python.org/3/library/logging.html#logging.LogRecord
> >
> > 2007-02-25 12:29 GMT+01:00 :
> >
> > > Zdravím. Mám dotaz na to, jak pracujete s proměnnými. Jestli
> > > používáte přímo název proměnné:
> > >
> > > test = 'svete'
> > >
> > > print 'ahoj ' + test
> > >
> > > Nebo zápis přes % :
> > >
> > > print 'ahoj %s' % test
> > >
> > > % se mi líbí, je fajn v tom, že můžu použít %i , %d, ..,
> formátování
> > > výstupu, atd. Je tam nějaké zásadní 'ale' ?
> > >
> > > ___
> > > Python mailing list
> > > python@py.cz
> > > http://www.py.cz/mailman/listinfo/python
> > >
> > > Visit: http://www.py.cz
> > >
> >
> >
> >
>
>
>
> --
> Ondřej Tůma 
> www: http://ipv6.mcbig.cz   jabber: mc...@jabber.cz   twitter:
> mcbig_cz
>
> ___
> Python mailing list
> python@py.cz
> http://www.py.cz/mailman/listinfo/python
>
> Visit: http://www.py.cz
>


>>>
>>> ___
>>> Python mailing list
>>> python@py.cz
>>> http://www.py.cz/mailman/listinfo/python
>>>
>>> Visit: http://www.py.cz
>>>
>>
>>
>> ___
>> Python mailing list
>> python@py.cz
>> http://www.py.cz/mailman/listinfo/python
>>
>> Visit: http://www.py.cz
>>
>
>
> ___
> Python mailing list
> python@py.cz
> http://www.py.cz/mailman/listinfo/python
>
> Visit: http://www.py.cz
>
___
Python mailing list
python@py.cz
http://www.py.cz/mailman/listinfo/python

Visit: http://www.py.cz

Re: [python] Používání proměnných

2017-04-03 Tema obsahu starenka .
Hehe, a jo. Nechapu, proc to prislo tedko do mailu...

---
In Perl you shoot yourself in the foot, but nobody can understand how you
did it. Six months later, neither can you. | print 'aknerats'[::-1]

2017-04-03 10:48 GMT+02:00 Jirka Vejrazka :

> Zavolalo 2007 a chce odpoved na svoji otazku ;-)
>
> 2017-04-03 10:43 GMT+02:00 starenka . :
>
>> Sorka, chtel sem napsat '%(foo)s %(bar)s %(baz)d' % dict(foo='foo',
>> bar='bar', baz=1)
>>
>> ---
>> In Perl you shoot yourself in the foot, but nobody can understand how you
>> did it. Six months later, neither can you. | print 'aknerats'[::-1]
>>
>> 2017-04-03 10:41 GMT+02:00 starenka . :
>>
>>> >> U format se mi líbí zejména používání názvů:
>>>
>>> '{var}/{log}'.format(**{'log': 'mujlog', 'var': '/var/log'})
>>>
>>> Co ale jde i takhle 'foo %(bar)s %(baz)s %(baz)d' % dict(foo='foo',
>>> bar='bar', baz=1)
>>> ---
>>> In Perl you shoot yourself in the foot, but nobody can understand how
>>> you did it. Six months later, neither can you. | print 'aknerats'[::-1]
>>>
>>> 2017-04-03 10:36 GMT+02:00 Ondrej Tuma :
>>>
 Ahoj,

 ještě doplním, kolega kdysi testoval různé rychlosti spojování stringů
 s tím, že v každé verzi (i jednotlivé verze Python 2.x) se rychlosti
 lišily, takže to asi nemá moc cenu řešit.

 Sám používám + buď na spojování 2 max tří stringů. Ale spíš jen jako
 jeho další rozšiřování:

 log_file += '/mujlog'

 Zejména pokud jde o vkládání někam do středu tak pak už %s nebo format,
 který má opravdu mnoho krásných možností:

 log_file = '/var/%s/mujlog' % 'log'

 U format se mi líbí zejména používání názvů:

 '{var}/{log}'.format(**{'log': 'mujlog', 'var': '/var/log'})

 Ondra

 V Fri, 31 Mar 2017 14:00:08 +0200
 Dan Pressl  napsáno:

 > Ahoj,
 >
 > odpověď je trochu složitější. Pokud máš řetězec, který chceš
 > vytisknout klasickým způsobem (print) tak je doporučovaná cesta:
 >
 > >>> x = 'Martin'
 > >>> print 'Ahoj {}'.format(x)
 > Ahoj Martin
 >
 > s tím, že format je nástroj, který umí hodně věcí (pokročilé
 > formátování, kontrola datovým typů apod.):
 >
 > >>> print '{:>3s}% {:.1f}\n{:>3s}% {:d}'.format('5', 3.14, '95', 42)
 >   5% 3.1
 >  95% 42
 >
 > a v Python 3 už by se jinak formátovat nemělo. Více informací najdeš
 > tady: https://pyformat.info/
 >
 > Pokud ale používáš Pythoní modul logging, tak by jsi měl používat:
 >
 > >>> import logging
 > >>> logging.info('Ahoj %s', 'Martine')
 >
 > protože pak můžeš přistupovat k jednotlivým parametrům u logů. Více
 > info najdeš na:
 >
 > https://docs.python.org/3/library/logging.html#logging.LogRecord
 >
 > 2007-02-25 12:29 GMT+01:00 :
 >
 > > Zdravím. Mám dotaz na to, jak pracujete s proměnnými. Jestli
 > > používáte přímo název proměnné:
 > >
 > > test = 'svete'
 > >
 > > print 'ahoj ' + test
 > >
 > > Nebo zápis přes % :
 > >
 > > print 'ahoj %s' % test
 > >
 > > % se mi líbí, je fajn v tom, že můžu použít %i , %d, .., formátování
 > > výstupu, atd. Je tam nějaké zásadní 'ale' ?
 > >
 > > ___
 > > Python mailing list
 > > python@py.cz
 > > http://www.py.cz/mailman/listinfo/python
 > >
 > > Visit: http://www.py.cz
 > >
 >
 >
 >



 --
 Ondřej Tůma 
 www: http://ipv6.mcbig.cz   jabber: mc...@jabber.cz   twitter: mcbig_cz

 ___
 Python mailing list
 python@py.cz
 http://www.py.cz/mailman/listinfo/python

 Visit: http://www.py.cz

>>>
>>>
>>
>> ___
>> Python mailing list
>> python@py.cz
>> http://www.py.cz/mailman/listinfo/python
>>
>> Visit: http://www.py.cz
>>
>
>
> ___
> Python mailing list
> python@py.cz
> http://www.py.cz/mailman/listinfo/python
>
> Visit: http://www.py.cz
>
___
Python mailing list
python@py.cz
http://www.py.cz/mailman/listinfo/python

Visit: http://www.py.cz

Re: [python] Používání proměnných

2017-04-03 Tema obsahu Jirka Vejrazka
Zavolalo 2007 a chce odpoved na svoji otazku ;-)

2017-04-03 10:43 GMT+02:00 starenka . :

> Sorka, chtel sem napsat '%(foo)s %(bar)s %(baz)d' % dict(foo='foo',
> bar='bar', baz=1)
>
> ---
> In Perl you shoot yourself in the foot, but nobody can understand how you
> did it. Six months later, neither can you. | print 'aknerats'[::-1]
>
> 2017-04-03 10:41 GMT+02:00 starenka . :
>
>> >> U format se mi líbí zejména používání názvů:
>>
>> '{var}/{log}'.format(**{'log': 'mujlog', 'var': '/var/log'})
>>
>> Co ale jde i takhle 'foo %(bar)s %(baz)s %(baz)d' % dict(foo='foo',
>> bar='bar', baz=1)
>> ---
>> In Perl you shoot yourself in the foot, but nobody can understand how you
>> did it. Six months later, neither can you. | print 'aknerats'[::-1]
>>
>> 2017-04-03 10:36 GMT+02:00 Ondrej Tuma :
>>
>>> Ahoj,
>>>
>>> ještě doplním, kolega kdysi testoval různé rychlosti spojování stringů
>>> s tím, že v každé verzi (i jednotlivé verze Python 2.x) se rychlosti
>>> lišily, takže to asi nemá moc cenu řešit.
>>>
>>> Sám používám + buď na spojování 2 max tří stringů. Ale spíš jen jako
>>> jeho další rozšiřování:
>>>
>>> log_file += '/mujlog'
>>>
>>> Zejména pokud jde o vkládání někam do středu tak pak už %s nebo format,
>>> který má opravdu mnoho krásných možností:
>>>
>>> log_file = '/var/%s/mujlog' % 'log'
>>>
>>> U format se mi líbí zejména používání názvů:
>>>
>>> '{var}/{log}'.format(**{'log': 'mujlog', 'var': '/var/log'})
>>>
>>> Ondra
>>>
>>> V Fri, 31 Mar 2017 14:00:08 +0200
>>> Dan Pressl  napsáno:
>>>
>>> > Ahoj,
>>> >
>>> > odpověď je trochu složitější. Pokud máš řetězec, který chceš
>>> > vytisknout klasickým způsobem (print) tak je doporučovaná cesta:
>>> >
>>> > >>> x = 'Martin'
>>> > >>> print 'Ahoj {}'.format(x)
>>> > Ahoj Martin
>>> >
>>> > s tím, že format je nástroj, který umí hodně věcí (pokročilé
>>> > formátování, kontrola datovým typů apod.):
>>> >
>>> > >>> print '{:>3s}% {:.1f}\n{:>3s}% {:d}'.format('5', 3.14, '95', 42)
>>> >   5% 3.1
>>> >  95% 42
>>> >
>>> > a v Python 3 už by se jinak formátovat nemělo. Více informací najdeš
>>> > tady: https://pyformat.info/
>>> >
>>> > Pokud ale používáš Pythoní modul logging, tak by jsi měl používat:
>>> >
>>> > >>> import logging
>>> > >>> logging.info('Ahoj %s', 'Martine')
>>> >
>>> > protože pak můžeš přistupovat k jednotlivým parametrům u logů. Více
>>> > info najdeš na:
>>> >
>>> > https://docs.python.org/3/library/logging.html#logging.LogRecord
>>> >
>>> > 2007-02-25 12:29 GMT+01:00 :
>>> >
>>> > > Zdravím. Mám dotaz na to, jak pracujete s proměnnými. Jestli
>>> > > používáte přímo název proměnné:
>>> > >
>>> > > test = 'svete'
>>> > >
>>> > > print 'ahoj ' + test
>>> > >
>>> > > Nebo zápis přes % :
>>> > >
>>> > > print 'ahoj %s' % test
>>> > >
>>> > > % se mi líbí, je fajn v tom, že můžu použít %i , %d, .., formátování
>>> > > výstupu, atd. Je tam nějaké zásadní 'ale' ?
>>> > >
>>> > > ___
>>> > > Python mailing list
>>> > > python@py.cz
>>> > > http://www.py.cz/mailman/listinfo/python
>>> > >
>>> > > Visit: http://www.py.cz
>>> > >
>>> >
>>> >
>>> >
>>>
>>>
>>>
>>> --
>>> Ondřej Tůma 
>>> www: http://ipv6.mcbig.cz   jabber: mc...@jabber.cz   twitter: mcbig_cz
>>>
>>> ___
>>> Python mailing list
>>> python@py.cz
>>> http://www.py.cz/mailman/listinfo/python
>>>
>>> Visit: http://www.py.cz
>>>
>>
>>
>
> ___
> Python mailing list
> python@py.cz
> http://www.py.cz/mailman/listinfo/python
>
> Visit: http://www.py.cz
>
___
Python mailing list
python@py.cz
http://www.py.cz/mailman/listinfo/python

Visit: http://www.py.cz

Re: [python] Používání proměnných

2017-04-03 Tema obsahu starenka .
Sorka, chtel sem napsat '%(foo)s %(bar)s %(baz)d' % dict(foo='foo',
bar='bar', baz=1)

---
In Perl you shoot yourself in the foot, but nobody can understand how you
did it. Six months later, neither can you. | print 'aknerats'[::-1]

2017-04-03 10:41 GMT+02:00 starenka . :

> >> U format se mi líbí zejména používání názvů:
>
> '{var}/{log}'.format(**{'log': 'mujlog', 'var': '/var/log'})
>
> Co ale jde i takhle 'foo %(bar)s %(baz)s %(baz)d' % dict(foo='foo',
> bar='bar', baz=1)
> ---
> In Perl you shoot yourself in the foot, but nobody can understand how you
> did it. Six months later, neither can you. | print 'aknerats'[::-1]
>
> 2017-04-03 10:36 GMT+02:00 Ondrej Tuma :
>
>> Ahoj,
>>
>> ještě doplním, kolega kdysi testoval různé rychlosti spojování stringů
>> s tím, že v každé verzi (i jednotlivé verze Python 2.x) se rychlosti
>> lišily, takže to asi nemá moc cenu řešit.
>>
>> Sám používám + buď na spojování 2 max tří stringů. Ale spíš jen jako
>> jeho další rozšiřování:
>>
>> log_file += '/mujlog'
>>
>> Zejména pokud jde o vkládání někam do středu tak pak už %s nebo format,
>> který má opravdu mnoho krásných možností:
>>
>> log_file = '/var/%s/mujlog' % 'log'
>>
>> U format se mi líbí zejména používání názvů:
>>
>> '{var}/{log}'.format(**{'log': 'mujlog', 'var': '/var/log'})
>>
>> Ondra
>>
>> V Fri, 31 Mar 2017 14:00:08 +0200
>> Dan Pressl  napsáno:
>>
>> > Ahoj,
>> >
>> > odpověď je trochu složitější. Pokud máš řetězec, který chceš
>> > vytisknout klasickým způsobem (print) tak je doporučovaná cesta:
>> >
>> > >>> x = 'Martin'
>> > >>> print 'Ahoj {}'.format(x)
>> > Ahoj Martin
>> >
>> > s tím, že format je nástroj, který umí hodně věcí (pokročilé
>> > formátování, kontrola datovým typů apod.):
>> >
>> > >>> print '{:>3s}% {:.1f}\n{:>3s}% {:d}'.format('5', 3.14, '95', 42)
>> >   5% 3.1
>> >  95% 42
>> >
>> > a v Python 3 už by se jinak formátovat nemělo. Více informací najdeš
>> > tady: https://pyformat.info/
>> >
>> > Pokud ale používáš Pythoní modul logging, tak by jsi měl používat:
>> >
>> > >>> import logging
>> > >>> logging.info('Ahoj %s', 'Martine')
>> >
>> > protože pak můžeš přistupovat k jednotlivým parametrům u logů. Více
>> > info najdeš na:
>> >
>> > https://docs.python.org/3/library/logging.html#logging.LogRecord
>> >
>> > 2007-02-25 12:29 GMT+01:00 :
>> >
>> > > Zdravím. Mám dotaz na to, jak pracujete s proměnnými. Jestli
>> > > používáte přímo název proměnné:
>> > >
>> > > test = 'svete'
>> > >
>> > > print 'ahoj ' + test
>> > >
>> > > Nebo zápis přes % :
>> > >
>> > > print 'ahoj %s' % test
>> > >
>> > > % se mi líbí, je fajn v tom, že můžu použít %i , %d, .., formátování
>> > > výstupu, atd. Je tam nějaké zásadní 'ale' ?
>> > >
>> > > ___
>> > > Python mailing list
>> > > python@py.cz
>> > > http://www.py.cz/mailman/listinfo/python
>> > >
>> > > Visit: http://www.py.cz
>> > >
>> >
>> >
>> >
>>
>>
>>
>> --
>> Ondřej Tůma 
>> www: http://ipv6.mcbig.cz   jabber: mc...@jabber.cz   twitter: mcbig_cz
>>
>> ___
>> Python mailing list
>> python@py.cz
>> http://www.py.cz/mailman/listinfo/python
>>
>> Visit: http://www.py.cz
>>
>
>
___
Python mailing list
python@py.cz
http://www.py.cz/mailman/listinfo/python

Visit: http://www.py.cz

Re: [python] Používání proměnných

2017-04-03 Tema obsahu starenka .
>> U format se mi líbí zejména používání názvů:

'{var}/{log}'.format(**{'log': 'mujlog', 'var': '/var/log'})

Co ale jde i takhle 'foo %(bar)s %(baz)s %(baz)d' % dict(foo='foo',
bar='bar', baz=1)
---
In Perl you shoot yourself in the foot, but nobody can understand how you
did it. Six months later, neither can you. | print 'aknerats'[::-1]

2017-04-03 10:36 GMT+02:00 Ondrej Tuma :

> Ahoj,
>
> ještě doplním, kolega kdysi testoval různé rychlosti spojování stringů
> s tím, že v každé verzi (i jednotlivé verze Python 2.x) se rychlosti
> lišily, takže to asi nemá moc cenu řešit.
>
> Sám používám + buď na spojování 2 max tří stringů. Ale spíš jen jako
> jeho další rozšiřování:
>
> log_file += '/mujlog'
>
> Zejména pokud jde o vkládání někam do středu tak pak už %s nebo format,
> který má opravdu mnoho krásných možností:
>
> log_file = '/var/%s/mujlog' % 'log'
>
> U format se mi líbí zejména používání názvů:
>
> '{var}/{log}'.format(**{'log': 'mujlog', 'var': '/var/log'})
>
> Ondra
>
> V Fri, 31 Mar 2017 14:00:08 +0200
> Dan Pressl  napsáno:
>
> > Ahoj,
> >
> > odpověď je trochu složitější. Pokud máš řetězec, který chceš
> > vytisknout klasickým způsobem (print) tak je doporučovaná cesta:
> >
> > >>> x = 'Martin'
> > >>> print 'Ahoj {}'.format(x)
> > Ahoj Martin
> >
> > s tím, že format je nástroj, který umí hodně věcí (pokročilé
> > formátování, kontrola datovým typů apod.):
> >
> > >>> print '{:>3s}% {:.1f}\n{:>3s}% {:d}'.format('5', 3.14, '95', 42)
> >   5% 3.1
> >  95% 42
> >
> > a v Python 3 už by se jinak formátovat nemělo. Více informací najdeš
> > tady: https://pyformat.info/
> >
> > Pokud ale používáš Pythoní modul logging, tak by jsi měl používat:
> >
> > >>> import logging
> > >>> logging.info('Ahoj %s', 'Martine')
> >
> > protože pak můžeš přistupovat k jednotlivým parametrům u logů. Více
> > info najdeš na:
> >
> > https://docs.python.org/3/library/logging.html#logging.LogRecord
> >
> > 2007-02-25 12:29 GMT+01:00 :
> >
> > > Zdravím. Mám dotaz na to, jak pracujete s proměnnými. Jestli
> > > používáte přímo název proměnné:
> > >
> > > test = 'svete'
> > >
> > > print 'ahoj ' + test
> > >
> > > Nebo zápis přes % :
> > >
> > > print 'ahoj %s' % test
> > >
> > > % se mi líbí, je fajn v tom, že můžu použít %i , %d, .., formátování
> > > výstupu, atd. Je tam nějaké zásadní 'ale' ?
> > >
> > > ___
> > > Python mailing list
> > > python@py.cz
> > > http://www.py.cz/mailman/listinfo/python
> > >
> > > Visit: http://www.py.cz
> > >
> >
> >
> >
>
>
>
> --
> Ondřej Tůma 
> www: http://ipv6.mcbig.cz   jabber: mc...@jabber.cz   twitter: mcbig_cz
>
> ___
> Python mailing list
> python@py.cz
> http://www.py.cz/mailman/listinfo/python
>
> Visit: http://www.py.cz
>
___
Python mailing list
python@py.cz
http://www.py.cz/mailman/listinfo/python

Visit: http://www.py.cz

Re: [python] Používání proměnných

2017-04-03 Tema obsahu Ondrej Tuma
Ahoj,

ještě doplním, kolega kdysi testoval různé rychlosti spojování stringů
s tím, že v každé verzi (i jednotlivé verze Python 2.x) se rychlosti
lišily, takže to asi nemá moc cenu řešit.

Sám používám + buď na spojování 2 max tří stringů. Ale spíš jen jako
jeho další rozšiřování:

log_file += '/mujlog'

Zejména pokud jde o vkládání někam do středu tak pak už %s nebo format,
který má opravdu mnoho krásných možností:

log_file = '/var/%s/mujlog' % 'log'

U format se mi líbí zejména používání názvů:

'{var}/{log}'.format(**{'log': 'mujlog', 'var': '/var/log'})

Ondra

V Fri, 31 Mar 2017 14:00:08 +0200
Dan Pressl  napsáno:

> Ahoj,
> 
> odpověď je trochu složitější. Pokud máš řetězec, který chceš
> vytisknout klasickým způsobem (print) tak je doporučovaná cesta:
> 
> >>> x = 'Martin'
> >>> print 'Ahoj {}'.format(x)
> Ahoj Martin
> 
> s tím, že format je nástroj, který umí hodně věcí (pokročilé
> formátování, kontrola datovým typů apod.):
> 
> >>> print '{:>3s}% {:.1f}\n{:>3s}% {:d}'.format('5', 3.14, '95', 42)
>   5% 3.1
>  95% 42
> 
> a v Python 3 už by se jinak formátovat nemělo. Více informací najdeš
> tady: https://pyformat.info/
> 
> Pokud ale používáš Pythoní modul logging, tak by jsi měl používat:
> 
> >>> import logging
> >>> logging.info('Ahoj %s', 'Martine')
> 
> protože pak můžeš přistupovat k jednotlivým parametrům u logů. Více
> info najdeš na:
> 
> https://docs.python.org/3/library/logging.html#logging.LogRecord
> 
> 2007-02-25 12:29 GMT+01:00 :
> 
> > Zdravím. Mám dotaz na to, jak pracujete s proměnnými. Jestli
> > používáte přímo název proměnné:
> >
> > test = 'svete'
> >
> > print 'ahoj ' + test
> >
> > Nebo zápis přes % :
> >
> > print 'ahoj %s' % test
> >
> > % se mi líbí, je fajn v tom, že můžu použít %i , %d, .., formátování
> > výstupu, atd. Je tam nějaké zásadní 'ale' ?
> >
> > ___
> > Python mailing list
> > python@py.cz
> > http://www.py.cz/mailman/listinfo/python
> >
> > Visit: http://www.py.cz
> >
> 
> 
> 



-- 
Ondřej Tůma 
www: http://ipv6.mcbig.cz   jabber: mc...@jabber.cz   twitter: mcbig_cz


pgp61ARCYeOIE.pgp
Description: Digitální podpis OpenPGP
___
Python mailing list
python@py.cz
http://www.py.cz/mailman/listinfo/python

Visit: http://www.py.cz