Python/Python Avançado: mudanças entre as edições
imported>DannyS712 m (<source> -> <syntaxhighlight> (phab:T237267)) |
|||
(7 revisões intermediárias por 6 usuários não estão sendo mostradas) | |||
Linha 1: | Linha 1: | ||
== Decorators == | |||
== Propriedades, acessores e modificadores == | == Propriedades, acessores e modificadores == | ||
== List Comprehensions == | == List Comprehensions == | ||
< | <syntaxhighlight lang='python'> | ||
>>> lista = [[1,2,3], [4,5,6], [7,8,9]] | >>> lista = [[1,2,3], [4,5,6], [7,8,9]] | ||
>>> print [[r[col] for r in lista] for col in range(len(lista[0]))] | >>> print [[r[col] for r in lista] for col in range(len(lista[0]))] | ||
[[1, 4, 7], [2, 5, 8], [3, 6, 9]] | [[1, 4, 7], [2, 5, 8], [3, 6, 9]] | ||
>>> | >>> | ||
>>> list_one = [2, 3, 4] | >>> list_one = [2, 3, 4] | ||
>>> list_two = [2*i for i in list_one if i > 2] | >>> list_two = [2*i for i in list_one if i > 2] | ||
Linha 21: | Linha 18: | ||
>>>sum(x for x in xrange(101)) | >>>sum(x for x in xrange(101)) | ||
>>>5050 | >>>5050 | ||
</ | </syntaxhighlight> | ||
== Expresssões regulares == | == Expresssões regulares == | ||
Python consegue lidar com [[expressões regulares]] usando a biblioteca '''re'''<ref>[http://www.amk.ca/python/howto/regex/regex.html Regular Expression HOWTO], por A.M.Kuchling, em www.amk.ca</ref>. | |||
Expressões regulares não podem ser usadas diretamente, é preciso criar uma variável que faça a interpretação das strings. Esta variável é de classe RegexObject. Por exemplo, para se criar uma RegexObject que identifique strings que comecem com a sequência "abc", podemos fazer: | |||
<syntaxhighlight lang='python'> | |||
>>> import re | |||
>>> m = re.compile('^abc*') | |||
</syntaxhighlight> | |||
Exemplo de uso: | |||
<syntaxhighlight lang='python'> | |||
>>> import re | |||
>>> txt = 'Maçã' | |||
>>> ER1 = re.compile('[a-z]', re.I) | |||
>>> print ER1.sub('.', txt) | |||
..çã | |||
>>> ER2 = re.compile(r'\w', re.L) | |||
>>> print ER2.sub('.', txt) | |||
.... | |||
>>> uau = r'((((((((((.))))))))))\10' | |||
>>> re.sub(uau, '.', 'zz') | |||
</syntaxhighlight> | |||
== Generators == | == Generators == | ||
== Distutils == | == Distutils == | ||
{{ | == Referências == | ||
<references /> | |||
{{esboço|Informática}} | |||
{{AutoCat}} |
Edição atual tal como às 15h40min de 16 de abril de 2020
Decorators
Propriedades, acessores e modificadores
List Comprehensions
>>> lista = [[1,2,3], [4,5,6], [7,8,9]]
>>> print [[r[col] for r in lista] for col in range(len(lista[0]))]
[[1, 4, 7], [2, 5, 8], [3, 6, 9]]
>>>
>>> list_one = [2, 3, 4]
>>> list_two = [2*i for i in list_one if i > 2]
>>> list_two
[6, 8]
>>>
# somando os números de 1 a 100 :)
>>>sum(x for x in xrange(101))
>>>5050
Expresssões regulares
Python consegue lidar com expressões regulares usando a biblioteca re[1].
Expressões regulares não podem ser usadas diretamente, é preciso criar uma variável que faça a interpretação das strings. Esta variável é de classe RegexObject. Por exemplo, para se criar uma RegexObject que identifique strings que comecem com a sequência "abc", podemos fazer:
>>> import re
>>> m = re.compile('^abc*')
Exemplo de uso:
>>> import re
>>> txt = 'Maçã'
>>> ER1 = re.compile('[a-z]', re.I)
>>> print ER1.sub('.', txt)
..çã
>>> ER2 = re.compile(r'\w', re.L)
>>> print ER2.sub('.', txt)
....
>>> uau = r'((((((((((.))))))))))\10'
>>> re.sub(uau, '.', 'zz')
Generators
Distutils
Referências
- ↑ Regular Expression HOWTO, por A.M.Kuchling, em www.amk.ca
Esta página é um esboço de informática. Ampliando-a você ajudará a melhorar o Wikilivros. |