Python para Bioinformática

Propaganda
Python para Bioinformática Manipulação de Strings
Prof. Alessandro Brawerman ì 2 Manipulando Strings ì  Manipulação de strings é uma a;vidade frequente em programas Python. ì  O jeito mais básico de manipular strings é através de métodos que estão dentro da própria classe. ì  Podemos fazer um limitado número de tarefas em strings através desses métodos. >>> teste = “Isto e uma string.” ì  A função len pode ser usada para encontrar o tamanho de uma string contando espacos e caracteres especiais, ou seja, tudo que pertencer a essa string. >>> len(teste) 3 Substring ì  a=”abcdefghijk” print a[2:5] ì  resulta em cde ou… ì  def substr(str,origem, tamanho): print substr(“abcdefgkijk”,2,3) ì  resulta em cde 4 Método find find (substring, inicio, fim) ì  Retorna o índice da primeira ocorrência de substring ì  inicio e fim são opcionais e indicam os intervalos de índices onde a busca será efetuada ì  Os defaults são 0 e o comprimento da string, respec;vamente ì  Caso substring não apareça na string, é retornado -­‐1 ì  Observe que o operador in pode ser usado para dizer se uma substring aparece numa string 5 Método find 6 Exercício ì  Dada uma string representando uma cadeia de DNA, faça um programa que: 1.  Imprima a quan;dade de bases desta cadeia; 2.  Inverta a string; 3.  Caso a sequência CTAG acontecer imprima a posição inicial da sequência. 4.  Atribua a sequência de caracteres da cadeia começando por C até o final da string para uma outra string. 5.  Imprima o resultado da operação em 4. 7 Método Join join(sequência) ì  Retorna uma string com todos os elementos da sequência concatenados ì  Os elementos da sequência têm que ser strings ì  A string objeto é usada como separador entre os elementos ì  Ex.: >>> "/".join(("usr","bin","python")) 'usr/bin/python’ 8 Método Join >>> "Q".join((1,2,3,4,5)) TypeError: sequence item 0: expected string, int found >>> "Q".join(('1','2','3','4','5')) '1Q2Q3Q4Q5' 9 Métodos Upper e Lower ì  lower() ì  Retorna a string com todos os caracteres maiúsculos conver;dos para minúsculos ì  upper() ì  Retorna a string com todos os caracteres minúsculos conver;dos para maiúsculos ì  Ex.: >>> print "Esperança".upper() ESPERANÇA >>> print "Pé de Laranja Lima".lower() pé de laranja lima 10 Método Replace replace(velho,novo,n) ì  Subs;tui as instâncias da substring velho por novo ì  Se n for especificado, apenas n instâncias são trocadas ì  Caso contrário, todas as instâncias são trocadas 11 Método Replace ì  Ex.: >>> s = "quem parte e reparte, fica com a maior parte" >>> s.replace("parte","parcela") 'quem parcela e reparcela, fica com a maior parcela' >>> s.replace("parte","parcela",2) 'quem parcela e reparcela, fica com a maior parte' 12 Exercício ì  Dada uma variável representando uma cadeia de DNA, “ATTATTATTATTA”, faça um programa que: 1.  Subs;tua todos os Ts por Cs 2.  Subs;tua os primeiros 2 As por Gs 3.  Encontre a posição do primeiro A 13 Método Split split(separador) ì  Retorna uma lista com as substrings presentes entre cópias da string separador ì  Faz o contrário do método join ì  Se separador não for especificado, são assumidas sequências de caracteres em branco, tabs ou newlines ì  Ex.: >>> s = "xxx yyy zzz xxx yyy zzz” >>> s.split() ['xxx', 'yyy', 'zzz', 'xxx', 'yyy', 'zzz'] 14 Método Strip strip(ch) ì  Retorna a string sem caracteres iniciais ou finais que estejam na string ch ì  Se ch não for especificada, re;ra caracteres em branco do início e/ou fim ì  Pode-­‐se também usar rstrip() para re;rar caracteres à direita (final) ou lstrip() para re;rar caracteres à esquerda (início) 15 Método Strip 16 Método Count count(str) ì  Conta o número de ocorrências de uma string >>> teste = “Isto e uma string.” >>> print(“%s” %teste.count(“s”)) 2 17 Exercícios ì  Dada uma variável com o seguinte conteúdo “This is just a simple string.”, faça um programa que: 1. 
2. 
3. 
4. 
5. 
6. 
7. 
8. 
Imprima a quan;dade de caracteres da string; Subs;tua simple por short. Imprima o resultado; Imprima a quan;dade de caracteres s da string; Imprima a posição da palavra string; Separe a string em uma outra variável exatamente no caracter a; Imprima a string inicial toda em maiúscula; Imprima a string inicial com as letras iniciais de cada palavra em maiúscula (.;tle); Imprima a cadeia original, porém somente a primeira letra da frase em maiúscula (.capitalize). 18 Outros Métodos ì  isupper() ì  islower() ì  is;tle() ì  isalnum() – string alfanumérica ?? ì  isalpha() – strin contém apenas letras ?? ì  isdigit() – apenas números ?? 19 Outros Métodos ì  Adicionar espaços em ambos lados da string: >>> 'A string.'.ljust(15) >>> 'A string.'.rjust(15) ì  O método center é usado para centralizar uma string dentro de espacos. >>> 'A string.'.center(15) 20 Exercício ì  Dada uma string “GCTAATGCTTGGTTAATTCCTTGGAC”, faça um programa que imprima a posição inicial de cada uma das sequências TT. 
Download