Celulares tecnologia assuntos variados PontoABC já

Introdução ao python 12

Expressões e strings 4


Manipulando strings

Você pode usar o sinal de mais e multiplicar para construir novas strings apartir de antigas.
O operator '+' concatena duas strings junto.

>>> a = 'alpha' + ' ' + 'beta'
>>> a
'alpha beta'
>>> x = '1'
>>> y = x * 100
>>> y
'1111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111'
>>>

Note que as regras de precedencia sempre funcionam como definido anteriormente, mesmo para strings .

>>> x = 'a' + 'b'*3
>>> x
'abbb'
>>>

Os augmented operators ou operadores simplificados funcionam também.

>>> a = 'a'
>>> a += 'b'
>>> c *= 'd'
>>> c
'ddd'
>>> c *= 2
>>> c
'dddddd'
>>>

Já que python strings são sequencias de caracteres você pode usar neles todos os outros meios de acesso a um dado elemento dentro de sequencias.

Indexando

>>> a = 'abcdef'
>>> a[1]
'b'
>>> a[0]
'a'
>>> a[-1]
'f'
>>> a[-2]
'e'
>>> a[-3]
'd'
>>>

Veja que o python permite indexação com numeros negativos também.
Quando escrevemos a[-1] o -1 está correspondendo ao ultimo caractere da string.
a[-2] está indexando a string 2 apartir da direita, apenas tenha em mente que
quando usamos numeros negativos estamos acessando apartir da direita e quando usamos
numeros positivos estamos indexando apartir da esquerda. É interessante que você pegue
o interpretador e comece a praticar pois somente praticando irá entender bem como tudo funciona.

slicing

>>> a[-4:-1]
'cde'
>>> a[-5:-1]
'bcde'
>>> a[0:-1]
'abcde'
>>>

Isto é, você pode cortar fatias da string e formar novas com ela.

>>> alpha = a[0:3] + 'hehe'
>>> alpha
'abchehe'
>>>
>>> beta = alpha + a[3:4] + a[0]
>>> beta
'abcheheda'
>>>

>>> '1233'[0:3]
'123'
>>> '1233'[3]
'3'
>>>

Python strings são do tipo imutavel ou immutable que significa você não pode
alterar eles diretamente usando o metodo de index. No entanto, obviamente, você pode atribuir uma nova string a uma variavel string.

>>> x = x + 'e'
>>> x
'abcde'
>>> x = 'a' + x
>>> x
'aabcde'
>>> x
'aabcde'
>>> x[0:3] = x[0:3] + 'a'
Traceback (most recent call last):
File "", line 1, in
TypeError: 'str' object does not support item assignment
>>>

Veja que quando tentamos modifica-los diretamente o python lança exceptions.
No entanto quando quando fazemos x = x + 'a' etc funciona.

Você também pode acessar cada caractere da string com

>>> a, b, c = 'abc'
>>> a
'a'
>>> b
'b'
>>> c
'c'
>>> a, b, c
('a', 'b', 'c')

Strings são objetos que possuem built-in metodos .

>>> a = 'abcd'
>>> dir(a)
['__add__', '__class__', '__contains__', '__delattr__', '__doc__', '__eq__', '__format__', '__ge__', '__getattribute__', '__getitem__', '__getnewargs__', '__getslice__', '__gt__', '__hash__', '__init__', '__le__', '__len__', '__lt__', '__mod__', '__mul__', '__ne__', '__new__', '__reduce__', '__reduce_ex__', '__repr__', '__rmod__', '__rmul__', '__setattr__', '__sizeof__', '__str__', '__subclasshook__', '_formatter_field_name_split', '_formatter_parser', 'capitalize', 'center', 'count', 'decode', 'encode', 'endswith', 'expandtabs', 'find', 'format', 'index', 'isalnum', 'isalpha', 'isdigit', 'islower', 'isspace', 'istitle', 'isupper', 'join', 'ljust', 'lower', 'lstrip', 'partition', 'replace', 'rfind', 'rindex', 'rjust', 'rpartition', 'rsplit', 'rstrip', 'split', 'splitlines', 'startswith', 'strip', 'swapcase', 'title', 'translate', 'upper', 'zfill']
>>> a.startswith('a')
True

0 comentários:

Postar um comentário

Faça o seu comentário e nos siga no Twitter