2016 Dr. Walter F. de Azevedo Jr. azevedolab.net
|
|
- Alessandra Castanho
- 5 Há anos
- Visualizações:
Transcrição
1 2016 Dr. Walter F. de Azevedo Jr azevedolab.net 1
2 Módulo random Vamos usar alguns programas simples na aula de hoje, para o estudo dos itens destacados no slide anterior. Os programas estão disponíveis no site: acesso em: 21 de julho Esses programas são discutidos no livro: DAWSON, Michael. Python Programming, for the absolute beginner. 3ed. Boston: Course Technology, p. Considere o programa craps_roller.py, mostrado abaixo. Vamos analisar cada linha de código nos próximos slides. O programa simula o lançamento de dois dados, como num jogo de cassino chamado Craps Roller, quem tiver interesse em saber quais são as chances de ganhar no Craps Roller, veja o site: acesso em: 21 de julho import random # Generates random numbers from 1 to 6 die1 = random.randint(1,6) die2 = random.randrange(6) + 1 total = die1 + die2 print( \nyou rolled a,die1, and a,die2, for a total of,total) 2
3 Módulo random A primeira linha importa o módulo random. Já vimos nas aulas anteriores, que o comando import é usado para carregar um arquivo com código previamente preparado. O código carregado, com o comando import, passa a fazer parte do programa que o chama. Assim, podemos chamar uma função específica do módulo carregado. Normalmente, os módulos são preparados dentro de um tema, por exemplo, o módulo random traz funções relacionadas à geração de números aleatórios. Na verdade, o termo aleatório deveria ser substituído por pseudoaleatório, visto que o interpretador Python usa uma equação para gerar os números ditos aleatórios, assim não podem ser considerados aleatórios no sentido restrito da palavra. Para termos números aleatórios, devemos usar fenômenos naturais, tais como decaimento de partículas alfa, para, desta forma, obtermos uma sequência de números aleatórios. Mais informações em: acesso em: 21 de julho import random # Generates random numbers from 1 to 6 die1 = random.randint(1,6) die2 = random.randrange(6) + 1 total = die1 + die2 print( \nyou rolled a,die1, and a,die2, for a total of,total) 3
4 Módulo random Para gerarmos os números com o módulo random, chamamos as funções necessárias. Por exemplo, a função randint(), destacada em vermelho no código abaixo. Para chamarmos a função, usamos a notação dot, vista anteriormente. Especificamente, random.randint(1,6) retorna um número entre 1 e 6, incluindo os extremos. Esse número é atribuído à variável die1. Se chamássemos a função diretamente, com randint(1,6), teríamos uma mensagem de erro, especificamente, um erro de sintaxe ou execução. Assim, a regra para o uso das funções presentes nos módulos, é colocar o nome do módulo, ao qual pertence a função, seguido do ponto. e o nome da função, como indicado no quadro abaixo. modulo.função(argumento(s)) import random # Generates random numbers from 1 to 6 die1 = random.randint(1,6) die2 = random.randrange(6) + 1 total = die1 + die2 print( \nyou rolled a,die1, and a,die2, for a total of,total) 4
5 Módulo random A função randrange(6) gera um número entre 0 e 5, ou seja, o número indicado como argumento da função, não faz parte do conjunto de números pseudoaleatórios a serem gerados pela função. Assim, se usarmos a função randrange() para gerar um número pseudoaleatório entre 1 e 6, temos que somar 1 ao resultado, como mostrado na linha de código em vermelho abaixo. Veja, como na função randint(), os números gerados são inteiros, a diferença é que na função randrange() não precisamos especificar o limite inferior, é assumido ser zero 0. É usada a notação dot, e o resultado atribuído à variável die2. import random # Generates random numbers from 1 to 6 die1 = random.randint(1,6) die2 = random.randrange(6) + 1 total = die1 + die2 print( \nyou rolled a,die1, and a,die2, for a total of,total) 5
6 Módulo random Como os números pseudoaleatórios foram atribuídos às variáveis die1 e die2, podemos operar com os valores. A linha em destaque abaixo, realiza a soma dos valores atribuídos às variáveis die1 e die2 e atribui o resultado à variável total. A linha seguinte mostra o resultado na tela. import random # Generates random numbers from 1 to 6 die1 = random.randint(1,6) die2 = random.randrange(6) + 1 total = die1 + die2 print( \nyou rolled a,die1, and a,die2, for a total of,total) 6
7 Programa guess_my_number.py Veremos a aplicação do módulo random num programa de jogo, onde você tenta adivinhar um número pseudoaleatório entre 1 e 100 gerado pelo computador, o programa chama-se guess_my_number.py. Veremos a execução do programa antes de vermos seu código. Welcome to 'Guess My Number'! I'm thinking of a number between 1 and 100. Try to guess it in as few attempts as possible. Take a guess: 50 Lower... Take a guess: 25 Higher... Take a guess: 38 Higher... Take a guess: 44 You guessed it! The number was 44 And it only took you 4 tries! 7
8 Programa guess_my_number.py O programa guess_my_number.py está mostrado abaixo. A primeira linha importa o módulo random, que tem as funções para gerarmos números pseudoaleatórios. import random print("\twelcome to 'Guess My Number'!") print("\ni'm thinking of a number between 1 and 100.") print("try to guess it in as few attempts as possible.\n") the_number = random.randint(1, 100) guess = int(input("take a guess: ")) tries = 1 while guess!= the_number: # guessing loop if guess > the_number: print("lower...") else: print("higher...") guess = int(input("take a guess: ")) tries += 1 print("you guessed it! The number was", the_number) print("and it only took you", tries, "tries!\n") 8
9 Programa guess_my_number.py As três linhas seguintes são funções print() que mostram uma mensagem de boasvindas e informações sobre o jogo. import random print("\twelcome to 'Guess My Number'!") print("\ni'm thinking of a number between 1 and 100.") print("try to guess it in as few attempts as possible.\n") the_number = random.randint(1, 100) guess = int(input("take a guess: ")) tries = 1 while guess!= the_number: # guessing loop if guess > the_number: print("lower...") else: print("higher...") guess = int(input("take a guess: ")) tries += 1 print("you guessed it! The number was", the_number) print("and it only took you", tries, "tries!\n") 9
10 Programa guess_my_number.py Depois usamos a função randint(1,100) do módulo random, para gerar um número pseudoaleatório entre 1 e 100. O número gerado será atribuído à variável the_number. import random print("\twelcome to 'Guess My Number'!") print("\ni'm thinking of a number between 1 and 100.") print("try to guess it in as few attempts as possible.\n") the_number = random.randint(1, 100) guess = int(input("take a guess: ")) tries = 1 while guess!= the_number: # guessing loop if guess > the_number: print("lower...") else: print("higher...") guess = int(input("take a guess: ")) tries += 1 print("you guessed it! The number was", the_number) print("and it only took you", tries, "tries!\n") 10
11 Programa guess_my_number.py O programa agora pergunta ao usuário pelo o número que ele acha que foi escolhido pelo computador, e atribui esse número à variável guess. O número 1 é atribuído à variável tries, que indica o número de tentativas que o jogador fez. import random print("\twelcome to 'Guess My Number'!") print("\ni'm thinking of a number between 1 and 100.") print("try to guess it in as few attempts as possible.\n") the_number = random.randint(1, 100) guess = int(input("take a guess: ")) tries = 1 while guess!= the_number: # guessing loop if guess > the_number: print("lower...") else: print("higher...") guess = int(input("take a guess: ")) tries += 1 print("you guessed it! The number was", the_number) print("and it only took you", tries, "tries!\n") 11
12 Programa guess_my_number.py A condição do loop while, é que o valor atribuído à variável guess seja diferente do atribuído à variável the_number, ou seja, o bloco do loop while será executado, enquanto os números forem diferentes. import random print("\twelcome to 'Guess My Number'!") print("\ni'm thinking of a number between 1 and 100.") print("try to guess it in as few attempts as possible.\n") the_number = random.randint(1, 100) guess = int(input("take a guess: ")) tries = 1 while guess!= the_number: # guessing loop if guess > the_number: print("lower...") else: print("higher...") guess = int(input("take a guess: ")) tries += 1 print("you guessed it! The number was", the_number) print("and it only took you", tries, "tries!\n") 12
13 Programa guess_my_number.py No bloco do loop temos o comando if, que testa se o valor atribuído à variável guess é maior que ao atribuído à variável the_number, caso seja, o programa mostra a mensagem Lower..., indicando que o jogador deve digitar um número menor. import random print("\twelcome to 'Guess My Number'!") print("\ni'm thinking of a number between 1 and 100.") print("try to guess it in as few attempts as possible.\n") the_number = random.randint(1, 100) guess = int(input("take a guess: ")) tries = 1 while guess!= the_number: # guessing loop if guess > the_number: print("lower...") else: print("higher...") guess = int(input("take a guess: ")) tries += 1 print("you guessed it! The number was", the_number) print("and it only took you", tries, "tries!\n") 13
14 Programa guess_my_number.py Caso o valor atribuído à variável guess, não seja maior que o atribuído à variável the_number, é mostrada a mensagem Higher..., para que o jogador digite um número mais alto. import random print("\twelcome to 'Guess My Number'!") print("\ni'm thinking of a number between 1 and 100.") print("try to guess it in as few attempts as possible.\n") the_number = random.randint(1, 100) guess = int(input("take a guess: ")) tries = 1 while guess!= the_number: # guessing loop if guess > the_number: print("lower...") else: print("higher...") guess = int(input("take a guess: ")) tries += 1 print("you guessed it! The number was", the_number) print("and it only took you", tries, "tries!\n") 14
15 Programa guess_my_number.py Depois é lido um novo valor para o número e atribuído à variável guess. É somado 1 ao valor atribuído à variável tries. O bloco de comandos é executado, até que a condição do while não seja mais satisfeita, ou seja, o jogador achou o número. import random print("\twelcome to 'Guess My Number'!") print("\ni'm thinking of a number between 1 and 100.") print("try to guess it in as few attempts as possible.\n") the_number = random.randint(1, 100) guess = int(input("take a guess: ")) tries = 1 while guess!= the_number: # guessing loop if guess > the_number: print("lower...") else: print("higher...") guess = int(input("take a guess: ")) tries += 1 print("you guessed it! The number was", the_number) print("and it only took you", tries, "tries!\n") 15
16 Programa guess_my_number.py Como o programa só sairá do bloco do loop while, quando o jogador acertar o número, colocamos, logo após os comandos do loop while, duas funções print() com as informações sobre o número encontrado e o número de tentativas necessárias. import random print("\twelcome to 'Guess My Number'!") print("\ni'm thinking of a number between 1 and 100.") print("try to guess it in as few attempts as possible.\n") the_number = random.randint(1, 100) guess = int(input("take a guess: ")) tries = 1 while guess!= the_number: # guessing loop if guess > the_number: print("lower...") else: print("higher...") guess = int(input("take a guess: ")) tries += 1 print("you guessed it! The number was", the_number) print("and it only took you", tries, "tries!\n") 16
17 GenBank O GenBank é uma base de dados de sequências de genes, como destacado na sua página de entrada. Toda informação, advinda do sequenciamento de diversos genomas, está armazenada de forma organizada e de acesso aberto no GenBank. O acesso pode ser feito no site: 17
18 GenBank Vamos ilustrar um exemplo com a consulta de sequência de bases do genoma do Mycobacterium tuberculosis. No campo indicado abaixo, selecionamos Genome. 18
19 GenBank Depois digitamos Mycobacterium tuberculosis. No campo indicado abaixo, e pressionamos Search. 19
20 GenBank O resultado da nossa busca está mostrado abaixo. Na parte em destaque temos o dendrograma, que mostra a proximidade entre os genomas depositados com o do Mycobacterium tuberculosis. Nosso foco é o depósito identificado como H37Rv. 20
21 GenBank Abaixo, na mesma página, temos informação sobre os genomas que apresentam a identificação Mycobacterium tuberculosis, pode haver mais de um, como abaixo, pois foram sequenciadas diferentes cepas da bactéria. Vamos olhar os detalhes da tabela abaixo. 21
22 GenBank A tabela abaixo traz informações sobre o o tamanho dos genomas (em MegaBases, ou seja 10 6 bases) de Mycobacterium tuberculosis, bem como disponibilidade do genoma, a porcentagem de bases CG no genoma, o número de genes identificados e proteínas. 22
23 GenBank Outra informação da página, destaca as publicações relacionadas com os genomas descritos. Abaixo temos 3 artigos em destaque. 23
24 GenBank Clicando no genoma indicado abaixo, teremos detalhamento das informações específicas do genoma clicado. 24
25 GenBank Podemos acessar o arquivo FASTA com a sequência completa do genoma, clicando na opção FASTA, mostrada abaixo. 25
26 GenBank Abaixo temos a sequência de bases de todo genoma do Mycobacterium tuberculosis. 26
27 GenBank Podemos salvá-la e manipulá-la com o editor de texto, clicamos na opção Send to, indicada abaixo. 27
28 GenBank Ao clicarmos teremos as opções mostradas abaixo, clicamos no File. 28
29 GenBank Podemos escolher o formato e clicar na opção de criar o arquivo de saída, indicado abaixo. 29
30 GenBank Teremos o download do arquivo fasta com a sequência completa do genoma de Mycobacterium tuberculosis, como indicado abaixo. O nome do arquivo baixado é sequence.fasta. 30
31 Protein Data Bank Vimos nas últimas aulas diversos programas em Python para a manipulação de arquivos FASTA. Podemos dizer, que a informação armazenada em tais arquivos, apresenta complexidade unidimensional, temos a estrutura primária de ácidos nucleicos e proteínas. Por outro lado, informações sobre a estrutura tridimensional de macromoléculas biológicas podem ser armazenadas em arquivos no formato protein data bank (PDB). Veremos agora um programa para a manipulação da informação contida nos arquivos PDB. 31
32 Protein Data Bank Um arquivo PDB tem basicamente dois tipos de informação. A primeira, indicada pelo início da linha com as palavras-chaves REMARK, HEADER, TITLE, CRYST1 e COMPND entre outras. São comentários sobre detalhes da estrutura depositada, como autores, detalhes sobre a técnica usada para resolução da estrutura, bem como informações sobre a qualidade estereoquímica da molécula armazenada no arquivo. O outro tipo de informação, são as coordenadas atômicas. Esta informação é a de maior importância, pois indica as coordenadas x, y e z de cada átomo da estrutura depositada, são iniciadas pelas palavras-chaves ATOM ou HETATM. 32
33 Protein Data Bank Vejamos como fazer o download da estrutura da cyclin-dependente kinase 2 em complexo com o fármaco roscovitine depositada com o código 2A4L. Inicialmente digitamos o código da proteína que desejamos baixar, no caso 2A4L, e clicamos na lupa, como indicado abaixo. 33
34 Protein Data Bank Agora temos acesso à estrutura. Para fazer download, clicamos na opção Download File>PDB File(Text). Assim podemos escolher a pasta onde salvar o arquivo PDB. 34
35 Protein Data Bank Os arquivos PDB são arquivos texto simples, poderíamos abrir com qualquer editor de texto para ver seu conteúdo. Abaixo temos as primeiras linhas do arquivo 2A4L.pdb. Veja que o PDB tem uma estrutura fixa, à esquerda no início de cada linha temos uma palavra-chave que identifica o tipo de informação contida na linha. Por exemplo, HEADER identifica a molécula armazenada, no caso uma transferase. Temos, também, a data do depósito da estrutura. Em seguida temos a palavra-chave TITLE, que identifica a molécula depositada. Nas próximas linhas temos a palavra-chave COMPND, que detalha a(s) molécula(s) contida(s) no arquivo. Não iremos identificar todas as palavras-chaves do PDB neste primeiro contato. Vamos nos concentrar nas coordenadas atômicas. HEADER TRANSFERASE 29-JUN-05 2A4L TITLE HUMAN CYCLIN-DEPENDENT KINASE 2 IN COMPLEX WITH ROSCOVITINE COMPND MOL_ID: 1; COMPND 2 MOLECULE: HOMO SAPIENS CYCLIN-DEPENDENT KINASE 2; COMPND 3 CHAIN: A; COMPND 4 SYNONYM: CDK2; COMPND 5 EC: ; COMPND 6 ENGINEERED: YES 35
36 Protein Data Bank Abaixo temos a primeira linha com coordenadas atômicas do arquivo 2A4L.pdb. Temos dois tipos de palavras-chaves usadas para linhas de coordenadas atômicas, uma é a palavra-chave ATOM, que é usada para identificar coordenadas atômicas para proteína. A outra é a palavra-chave HETATM, que traz a parte não proteica da estrutura, pode ser um inibidor ligado à estrutura da proteína, cofatores, íons ou outras moléculas que aparecem em complexo com a proteína. ATOM 1 N MET A N 36
37 Protein Data Bank Veremos em breve como fazer a leitura de um arquivo PDB em Python, mas antes veremos o formato das linhas de coordenadas atômicas. Vamos considerar que lemos uma linha de um arquivo PDB e temos a informação atribuída à variável line. Uma string em Python pode ser fatiada em colunas, por exemplo, line[0:6] representa as seis primeiras posições da string atribuída à variável line. Assim teríamos ATOM em line[0:6], veja que sempre iniciamos na posição zero, assim line[0] é A, line[1] é T e assim sucessivamente. Usando tal funcionalidade do Python, podemos dividir uma linha do PDB em diferentes fatias. Cada linha de um arquivo PDB tem 80 colunas, ou seja, uma string com 80 caracteres. ATOM 1 N MET A N 37
38 Protein Data Bank Como já destacamos, as informações sobre as coordenadas atômicas estão em linhas que iniciam com ATOM ou HETATM. Abaixo temos a indicação dos campos de uma linha, com informações sobre o conteúdo de cada parte num arquivo PDB. ATOM 1 N MET A N Colunas para a ocupação, é atribuída à variável line[56:60] Colunas para as coordenadas atômicas, são atribuídas às variáveis line[30:38], line[38:46], line[46:54] Colunas para o número do resíduo, é atribuída à variável line[22:26] Coluna 22 para o identificador da cadeia, é atribuída à variável line[21:22] Colunas de para o nome do aminoácido (ou ligante, ou HOH), é atribuída à variável line[17:20] Colunas de para o nome do átomo, é atribuída à variável line[13:15] Colunas de 7-11 para a ordem do átomo, é atribuída à variável line[6:11] Colunas de 1-6 para string com ATOM ou HETATM, é atribuída à variável line[0:6] 38
39 Protein Data Bank As informações sobre as últimas colunas. ATOM 1 N MET A N Colunas para o fator de vibração térmica, é atribuída à variável line[61:65] Colunas para o elemento químico, é atribuída à variável line[76:77] Além das informações indicadas anteriormente, há o identificador de segmento (colunas 73-76), atribuído à variável line[72:76]. Temos, também, a carga elétrica do átomo (colunas 79-80), atribuída à variável line[78:80]. Vamos ilustrar com um programa para leitura de arquivos PDB. 39
40 Programa: readpdb1.py Leitura de arquivos PDB (versão 1) Programa: readpdb1.py Resumo Programa para leitura de arquivo de coordenadas atômicas no formato protein data bank (PDB). Após a leitura do arquivo PDB, o programa mostra as coordenadas atômicas da parte proteica na tela. O usuário digita o nome do arquivo PDB de entrada. As colunas são usadas para as coordenadas atômicas x, y e z, e serão atribuídas às variáveis line[30:38], line[38:46] e line[46:54], respectivamente. 40
41 Programa: readpdb1.py Com 6 linhas de código conseguimos o programa para leitura do arquivo PDB. Na primeira linha lemos o nome do arquivo de entrada, que é atribuído à variável pdbfilein. Em seguida, o arquivo é aberto com a função open() e o conteúdo atribuído ao objeto arquivo fo. Cada elemento do objeto arquivo é uma linha do arquivo PDB. A partir de um loop for, podemos varrer o objeto arquivo fo. Dentro do loop for testamos se a string atribuída à variável line[0:6] é igual ATOM. Caso seja, mostramos as coordenadas atômicas atribuídas às variáveis line[30:38], line[38:46], line[46:54]. Por último, fechamos o arquivo com close(). O código está mostrado abaixo. pdbfilein = input("\ntype the PDB file name => ") fo = open(pdbfilein,"r") for line in fo: if line[0:6] == "ATOM ": fo.close() print(line[30:38], line[38:46], line[46:54]) Como os arquivos PDB tem uma estrutura bem definida, temos certeza que seu conteúdo está dividido em linhas, assim, para a leitura simples, não precisamos do 41.readlines().
42 Programa: readpdb1.py Ao rodarmos o programa para o arquivo 2A4L.pdb, temos o seguinte resultado. Só as primeiras linhas são mostradas abaixo, visto que o arquivo PDB tem milhares de linhas com coordenadas atômicas. Type the PDB file name => 2a4l.pdb
43 Programa: randomdna1.py (Trabalho 3) Random DNA (versão 1) Programa: randomdna1.py Resumo Programa para gerar um trecho de DNA com uma sequência aleatória. A sequência do DNA será atribuída a uma variável do tipo string (variável dna), onde cada base será gerada aleatoriamente (variável base), a partir do módulo random e adicionada à sequência de DNA. O programa tem como entrada o tamanho da sequência de DNA, a ser gerada aleatoriamente. A sequência aleatória será mostrada na tela. Para adicionar a base aleatória à sequência de DNA, podemos usar o operador + ou.join([dna,base]). 43
44 Programa: randomdna1.py (Trabalho 3) O programa é relativamente simples, o principal bloco do programa é um loop while, que monta a sequência do DNA. Dentro do loop while temos que gerar um número aleatório, entre 1 e 4, por exemplo. Depois temos que testar qual número foi gerado, usando o comando if/elif/else. Atribuímos a cada número uma base (variável base), que será adicionada à string dna. Podemos usar o operador + para ir montando a sequência, por exemplo: dna = dna + base Podemos, ainda, usar o método.join(), como indicado abaixo. dna = "".join([dna,base]) Em ambas situações, temos que criar a variável dna antes do loop while, para que possa ser adicionada a base. À variável dna devemos atribuir uma string vazia, como indicado abaixo. dna = "" 44
45 Programa: randomdna2.py (Trabalho 3) Random DNA (versão 2) Programa: randomdna2.py Resumo Programa para gerar um trecho de DNA com uma sequência aleatória. A sequência do DNA será atribuída a uma variável do tipo string (variável dna), onde cada base será gerada aleatoriamente (variável base), a partir do módulo random e adicionada à sequência de DNA. O programa tem como entrada o tamanho da sequência de DNA, a ser gerada aleatoriamente. A sequência aleatória será mostrada na tela. Para adicionar a base aleatória à sequência de DNA, podemos usar o operador + ou.join([dna,base]). O programa calcula as porcentagens de cada base presente na sequência de DNA gerada e mostra o resultado na tela. 45
46 Programa: randomdna2.py (Trabalho 3) Nesta versão do programa, temos que criar contadores para cada uma das bases do DNA. Para contar as bases, temos que inicialmente atribuir zero aos contadores, como mostrado abaixo: count_c = 0 count_g = 0 count_a = 0 count_t = 0 Os contadores serão atualizados em cada iteração do loop while. Depois de finalizado o loop while, serão calculadas as porcentagens, como segue: if count_bases > 0: perc_c = 100*count_C/count_bases perc_g = 100*count_G/count_bases perc_a = 100*count_A/count_bases perc_t = 100*count_T/count_bases Tomamos o cuidado de testar se o contador de bases (count_bases) é maior que zero, para evitar a divisão por zero. Uma vez pronto o programa, teste para sequências de diferentes tamanhos, por exemplo para 100, 1000 e O que você pode dizer sobre a aleatoriedade do módulo random? 46
47 Programa: randomdna3.py (Trabalho 3) Random DNA (versão 3) Programa: randomdna3.py Resumo Programa para gerar um trecho de DNA com uma sequência aleatória. A sequência do DNA será atribuída a uma variável do tipo string (variável dna), onde cada base será gerada aleatoriamente (variável base), a partir do módulo random e adicionada à sequência de DNA. O programa tem como entradas o tamanho da sequência de DNA, a ser gerada aleatoriamente, e o nome do arquivo de saída, onde a sequência será gravada. A sequência aleatória será mostrada na tela. Para adicionar a base aleatória à sequência de DNA, podemos usar o operador + ou.join([dna,base]). O programa calcula as porcentagens de cada base presente na sequência de DNA gerada e mostra o resultado na 47 tela.
48 Programa: randomdna3.py (Trabalho 3) Agora, a sequência gerada será armazenada num arquivo de saída. Usamos a função input() para ler o nome do arquivo de saída. A função open() é usada para criar o arquivo, onde a sequência do DNA será escrita, como indicado abaixo: # Reads output file name file_in = input("\ngive the DNA file name => ") # Opens DNA file dna_out = open(file_in,"w") Depois de gerada a sequência do DNA, como nos programas anteriores, podemos escrevê-la no arquivo de saída, como mostrado abaixo: # Writes sequence to output file dna_out.write(dna) # Closes DNA file dna_out.close() 48
49 Programa: readgenome.py (Trabalho 3) Read Genome Programa: readgenome.py Resumo Programa para a leitura da sequência de bases de um genoma armazenado num arquivo FASTA. Após a leitura, será mostrada na tela as seguintes informações: Identificador do FASTA, Numero de Adeninas, Numero de Timinas, Numero de Citosinas, Numero de Guaninas, Numero de bases nao identificadas, Numero de Citosinas e Guaninas, Numero de Adeninas e Timinas, Porcentagem de Citosinas e Guaninas, Porcentagem de Adeninas e Timinas, Porcentagem de bases nao identificadas, Numero total de bases lidas, Numero de bases nao identificadas 49
50 Programa: readgenome.py (Trabalho 3) Aplique o código no sequência armazenada no arquivo sequence.fasta. Os resultados esperados são os seguintes: Resultado da contagem de bases do arquivo: sequence.fasta Identificador do fasta: >gi ref NC_ Mycobacterium tuberculosis H37Rv chromosome, complete genome Numero de Adeninas: Numero de Timinas: Numero de Citosinas: Numero de Guaninas: Numero de bases nao identificadas: 0 Numero de Citosinas e Guaninas: Numero de Adeninas e Timinas: Porcentagem de Citosinas e Guaninas: Porcentagem de Adeninas e Timinas: Porcentagem de bases nao identificadas 0 Numero total de bases lidas
51 Programa: readpdb2.py (Trabalho 3) Leitura de arquivos PDB (versão 2) Programa: readpdb2.py Resumo Programa para leitura de arquivo de coordenadas atômicas no formato protein data bank (PDB). Após a leitura do arquivo PDB, o programa mostra na tela as linhas referentes à parte não-proteica da estrutura, identificadas com a palavrachave HETATM. O usuário digita o nome do arquivo PDB de entrada. 51
52 Trabalho 3 Lista de programas do trabalho 3 randomdna1.py randomdna2.py randomdna3.py readgenome.py readpdb2.py Data da entrega: Até o dia 27 de julho
53 Referências -BRESSERT, Eli. SciPy and NumPy. Sebastopol: O Reilly Media, Inc., p. -DAWSON, Michael. Python Programming, for the absolute beginner. 3ed. Boston: Course Technology, p. -HETLAND, Magnus Lie. Python Algorithms. Mastering Basic Algorithms in the Python Language. Nova York: Springer Science+Business Media LLC, p. -IDRIS, Ivan. NumPy 1.5. An action-packed guide dor the easy-to-use, high performance, Python based free open source NumPy mathematical library using real-world examples. Beginner s Guide. Birmingham: Packt Publishing Ltd., p. -KIUSALAAS, Jaan. Numerical Methods in Engineering with Python. 2ed. Nova York: Cambridge University Press, p. -LANDAU, Rubin H., PÁEZ, Manuel José, BORDEIANU, Cristian C. A Survey of Computational Physics. Introductory Computational Physics. Princeton: Princeton University Press, p. -LUTZ, Mark. Programming Python. 4ed. Sebastopol: O Reilly Media, Inc., p. -MODEL, Mitchell L. Bioinformatics Programming Using Python. Sebastopol: O Reilly Media, Inc., p. -TOSI, Sandro. Matplotlib for Python Developers. Birmingham: Packt Publishing Ltd., p. Última atualização: 21 de julho
2016 Dr. Walter F. de Azevedo Jr.
2016 Dr. Walter F. de Azevedo Jr. 000000000000000000000000000000000000000 000000000000000000000000000000000000000 000000000000111111111110001100000000000 000000000001111111111111111111000000001 000000000111111111111111111111111000000
Leia maisBioquímica. Prof. Dr. Walter F. de Azevedo Jr Dr. Walter F. de Azevedo Jr.
2018 Dr. Walter F. de Azevedo Jr. Bioquímica Prof. Dr. Walter F. de Azevedo Jr. E-mail: walter@azevedolab.net 1 As proteínas que tiveram sua estrutura tridimensional determinadas estão disponíveis no site
Leia mais2019 Dr. Walter F. de Azevedo Jr.
2019 Dr. Walter F. de Azevedo Jr. 000000000000000000000000000000000000000 000000000000000000000000000000000000000 000000000000111111111110001100000000000 000000000001111111111111111111000000001 000000000111111111111111111111111000000
Leia mais2015 Dr. Walter F. de Azevedo Jr. www.python.org
2015 Dr. Walter F. de Azevedo Jr. 000000000000000000000000000000000000000 000000000000000000000000000000000000000 000000000000111111111110001100000000000 000000000001111111111111111111000000001 000000000111111111111111111111111000000
Leia mais2019 Dr. Walter F. de Azevedo Jr.
2019 Dr. Walter F. de Azevedo Jr. 000000000000000000000000000000000000000 000000000000000000000000000000000000000 000000000000111111111110001100000000000 000000000001111111111111111111000000001 000000000111111111111111111111111000000
Leia mais2016 Dr. Walter F. de Azevedo Jr.
2016 Dr. Walter F. de Azevedo Jr. > 1 Download do pyzo A partir do pyzo (disponível em http:///), o processo de instalação do Python fica facilitado. A instalação integra, além do Python, um conjunto de
Leia maisBioinformática Aplicada
000000000000000000000000000000000000000 000000000000000000000000000000000000000 000000000000111111111110001100000000000 000000000001111111111111111111000000001 000000000111111111111111111111111000000 000000000111111111111111111111111000000
Leia mais2016 Dr. Walter F. de Azevedo Jr. > >
2016 Dr. Walter F. de Azevedo Jr. > > 1 Download do eclipse www.eclipse.org Antes de fazer o download do eclipse, certifique-se que você tem o Java (JDK) instalado no seu computador. Vá ao site www.eclipse.org.
Leia mais2019 Dr. Walter F. de Azevedo Jr.
2019 Dr. Walter F. de Azevedo Jr. 000000000000000000000000000000000000000 000000000000000000000000000000000000000 000000000000111111111110001100000000000 000000000001111111111111111111000000001 000000000111111111111111111111111000000
Leia mais2015 Dr. Walter F. de Azevedo Jr.
2015 Dr. Walter F. de Azevedo Jr. 000000000000000000000000000000000000000 000000000000000000000000000000000000000 000000000000111111111110001100000000000 000000000001111111111111111111000000001 000000000111111111111111111111111000000
Leia mais2015 Dr. Walter F. de Azevedo Jr.
2015 Dr. Walter F. de Azevedo Jr. 000000000000000000000000000000000000000 000000000000000000000000000000000000000 000000000000111111111110001100000000000 000000000001111111111111111111000000001 000000000111111111111111111111111000000
Leia mais2017 Dr. Walter F. de Azevedo Jr.
2017 Dr. Walter F. de Azevedo Jr. 000000000000000000000000000000000000000 000000000000000000000000000000000000000 000000000000111111111110001100000000000 000000000001111111111111111111000000001 000000000111111111111111111111111000000
Leia mais2016 Dr. Walter F. de Azevedo Jr.
2016 Dr. Walter F. de Azevedo Jr. 000000000000000000000000000000000000000 000000000000000000000000000000000000000 000000000000111111111110001100000000000 000000000001111111111111111111000000001 000000000111111111111111111111111000000
Leia mais2018 Dr. Walter F. de Azevedo Jr. azevedolab.net
2018 Dr. Walter F. de Azevedo Jr. azevedolab.net 1 Programação Orientada a Objeto Iremos ver o uso da abordagem de programação orientada a objeto (object-oriented programming (OOP)). Nosso objetivo é usar
Leia mais9/24/2014. Prof. André Backes
Prof. André Backes 1 Arquivos Por que usar arquivos? Permitem armazenar grande quantidade de informação; Persistência dos dados (disco); Acesso aos dados poder ser não sequencial; Acesso concorrente aos
Leia maisVimos na aula passada um algoritmo genético simples para resolver o problema do máximo da função x 2. Veremos sua implementação em Python.
azevedolab.net Implementação de um Algoritmo Genético Simples Vimos na aula passada um algoritmo genético simples para resolver o problema do máimo da função. Veremos sua implementação em Python. Gera
Leia maisA resposta apresentada em aula, no quadro, (em Chapin e/ou Português Estruturado) está correta?
23 Algoritmos com Repetição Nos exemplos e exercícios vistos até agora, sempre foi possível resolver os problemas com uma sequência de instruções que eram executadas apenas uma vez. Existem três estruturas
Leia maisBiologia Estrutural. Qualidade de modelos estruturais Prof. Dr. Walter F. de Azevedo Jr. wfdaj.sites.uol.com.br Dr. Walter F. de Azevedo Jr.
Biologia Estrutural Qualidade de modelos estruturais Prof. Dr. Walter F. de Azevedo Jr. Biologia Estrutural Resumo SCOP Modelagem molecular SCOP A primeira versão do SCOP foi liberada em 29 de outubro
Leia maisMini apostila de Python - Oficina de Vestibulandos. PET Computação - UFPR September 2016
Mini apostila de Python - Oficina de Vestibulandos PET Computação - UFPR September 2016 1 Sumário 1 Introdução 3 2 Obtenção e Instalação 3 3 Variáveis 3 4 Operações Matemáticas 5 5 Entrada de Dados 6 6
Leia mais2016 Dr. Walter F. de Azevedo Jr.
2016 Dr. Walter F. de Azevedo Jr. 000000000000000000000000000000000000000 000000000000000000000000000000000000000 000000000000111111111110001100000000000 000000000001111111111111111111000000001 000000000111111111111111111111111000000
Leia mais2017 Dr. Walter F. de Azevedo Jr.
01 Dr. Walter F. de Azevedo Jr. 000000000000000000000000000000000000000 000000000000000000000000000000000000000 000000000000111111111110001100000000000 000000000001111111111111111111000000001 000000000111111111111111111111111000000
Leia mais2016 Dr. Walter F. de Azevedo Jr.
2016 Dr. Walter F. de Azevedo Jr. 000000000000000000000000000000000000000 000000000000000000000000000000000000000 000000000000111111111110001100000000000 000000000001111111111111111111000000001 000000000111111111111111111111111000000
Leia maisPROGRAMAÇÃO de COMPUTADORES: LINGUAGEM FORTRAN 90/95
PROGRAMAÇÃO de COMPUTADORES: LINGUAGEM FORTRAN 90/95 Exercícios de revisão Lista 01: a) Monte um mapa conceitual indicando as relações entre os seguintes conceitos, no contexto do assunto visto em aula:
Leia maisA resposta apresentada em aula, no quadro, (em Chapin e/ou Português Estruturado) está correta?
23 Algoritmos com Repetição Nos exemplos e exercícios vistos até agora, sempre foi possível resolver os problemas com uma sequência de instruções que eram executadas apenas uma vez. Existem três estruturas
Leia maisArquivos O QUE É, COMO LER E MANIPULAR
Arquivos O QUE É, COMO LER E MANIPULAR Arquivos Variáveis oferecem armazenamento de dados temporariamente Os dados são perdidos quando o escopo da variável é finalizado ou quando o programa termina Arquivos
Leia maisACH5531 Introdução à Computação Estruturas de repetição
ACH5531 Introdução à Computação Estruturas de repetição Prof. Dr. Grzegorz Kowal grzegorz.kowal@usp.br https://sites.google.com/usp.br/ach5531 1 o sem 2019 sexta-feira, 14h00-15h45 CB, Bloco 3, 2 o andar,
Leia maisPasso-a-passo para desenvolver um Programa usando a Linguagem Python
Cursos: Engenharia de Produção / Tecnólogo em Gestão da Qualidade Disciplina: Informática Professora: Flávia Pereira de Carvalho Passo-a-passo para desenvolver um Programa usando a Linguagem Python 1)
Leia maisVariáveis e Entrada de Dados Marco André Lopes Mendes marcoandre.googlepages.
Variáveis e Entrada de Dados Marco André Lopes Mendes marcoandre@ifc-araquari.edu.br marcoandre@gmail.com marcoandre.googlepages.com Algoritmos é a base Primeiro programa Este programa possui apenas uma
Leia maisazevedolab.net 2015 Dr. Walter F. de Azevedo Jr. Aula 09 Strings, Leitura e Escrita de Arquivos (continuação)
azevedolab.net 2015 Dr. Walter F. de Azevedo Jr. Aula 09 Strings, Leitura e Escrita de Arquivos (continuação) 1 Programa read_fasta_01.pde Exercício de programação: Elabore um programa que leia um arquivo
Leia maisUNISINOS - UNIVERSIDADE DO VALE DO RIO DOS SINOS CENTRO DE CIÊNCIAS EXATAS E TECNOLÓGICAS (C6/6) Curso: Informática
Programação 1 Prof. Osório Aula 05 Pag.: 1 UNISINOS - UNIVERSIDADE DO VALE DO RIO DOS SINOS CENTRO DE CIÊNCIAS EXATAS E TECNOLÓGICAS (C6/6) Curso: Informática PROGRAMAÇÃO I AULA 05 Disciplina: Linguagem
Leia maisOrganização de programas em Python. Vanessa Braganholo
Organização de programas em Python Vanessa Braganholo vanessa@ic.uff.br Vamos programar em Python! Mas... } Como um programa é organizado? } Quais são os tipos de dados disponíveis? } Como variáveis podem
Leia maisVisualização de Hélices
Grupo: Curso: Turma: Data: Visualização de Hélices Objetivos Visualizar a estrutura tridimensional de hélices presentes na estrutura de proteínas e peptídeos, usandose recursos computacionais. Analisar
Leia maisIntrodução ao SciLab. SciLab O que é? Onde obter o programa:
Introdução ao SciLab SciLab O que é? SciLab é uma plataforma interativa para computação numérica composta de uma rica coleção de algoritmos numéricos e de uma linguagem de programação associada. CN04 2010
Leia maisPRIMEIROS PASSOS COM PYTHON. Prof. Msc. Luis Filipe Alves Pereira 2015
PRIMEIROS PASSOS COM PYTHON Prof. Msc. Luis Filipe Alves Pereira 2015 PRIMEIROS PASSOS COM PYTHON 02/47 O QUE É PYTHON? Python é uma linguagem de propósito geral, de alto nível e interpretada Python será
Leia mais2016 Dr. Walter F. de Azevedo Jr.
2016 Dr. Walter F. de Azevedo Jr. 000000000000000000000000000000000000000 000000000000000000000000000000000000000 000000000000111111111110001100000000000 000000000001111111111111111111000000001 000000000111111111111111111111111000000
Leia maisAULA 2: INTRODUÇÃO A PYTHON. Luís Feliphe Silva Costa
AULA 2: INTRODUÇÃO A PYTHON Luís Feliphe Silva Costa Sumário Variáveis simples Entrada e Saída de dados Operadores Estruturas Condicionais Estruturas de repetição Funções Tratamento de erros Variáveis
Leia maisMCG126 Programação de Computadores II
MCG126 Programação de Computadores II Turmas: A e B Professor: Isac Mendes Lacerda (Material original cedido gentilmente pela professora Janaína Gomide) 1 Bibliografia 2 Bibliografia Introdução à Programação
Leia maisAula de hoje. Comandos. Comandos simples. Comandos. Comandos de controle. Bloco de comandos. SCC Introdução à Programação para Engenharias
SCC 124 - Introdução à Programação para Engenharias Comandos Professor: André C. P. L. F. de Carvalho, ICMC-USP Pos-doutorando: Isvani Frias-Blanco Monitor: Henrique Bonini de Britto Menezes 1 Aula de
Leia mais10 - Ciclo while. Ludwig Krippahl 4/3/2019 ICE-B-10 ICE-B
ICE-B 10 - Ciclo while Ludwig Krippahl file:///media/ludi/gaveta/my Documents/Aulas/ICE-B-1819-2/Lectures/10-while.html?print-pdf#/ 1/35 while Resumo Ciclo while Iterar enquanto uma condição for verdadeira
Leia maisProgramação I Aula 6 Números pseudo-aleatórios
Programação I Aula 6 Números pseudo-aleatórios Pedro Vasconcelos DCC/FCUP 2018 Pedro Vasconcelos (DCC/FCUP) Programação I Aula 6 Números pseudo-aleatórios 2018 1 / 28 Nesta aula 1 Números pseudo-aleatórios
Leia maisProgramação de Computadores
Programação de Computadores Instituto de Computação UFF Departamento de Ciência da Computação Otton Teixeira da Silveira Filho Conteúdo Mais um tipo numérico print() formatado: clássico pythônico Tuplas
Leia maisAula 5 - Mais C e repetição
Vamos nesta aula mostrar mais detalhes e a forma geral dos comandos C vistos até agora. O comando de atribuição A forma geral do comando de atribuição é: = A expressão
Leia maisProgramação I Aula 6 Números pseudo-aleatórios Pedro Vasconcelos DCC/FCUP
Programação I Aula 6 Números pseudo-aleatórios DCC/FCUP DCC/FCUP 2019 1/ 28 Nesta aula 1 Números pseudo-aleatórios 2 Jogo Hi-Lo 3 Passeio aleatório DCC/FCUP 2019 2/ 28 Números pseudo-aleatórios Por vezes
Leia maisTrabalho Prático 2015 Simulador de Circuitos Opção 1 Versão /11/2013
Trabalho Prático 2015 Simulador de Circuitos Opção 1 Versão 1.0 12/11/2013 SSC0300 Linguagem de Programação e Aplicações Engenharia Elétrica - Eletrônica 2º Semestre de 2015 Prof: Daniel Rodrigo Ferraz
Leia maisIntrodução à Programação 2006/07. Algoritmos
Introdução à Programação 2006/07 Algoritmos Cálculo da média de uma sequência Algoritmos: Exercício 1 Pretende-se escrever um programa que, dado um numero indeterminado de números introduzidos pelo teclado,
Leia maisazevedolab.net 2015 Dr. Walter F. de Azevedo Jr. Programação Orientada a Objetos em Processing
azevedolab.net 2015 Dr. Walter F. de Azevedo Jr. Programação Orientada a Objetos em Processing 1 Programação Orientada a Objeto O uso de programação orientada a objeto (POO) não irá introduzir necessariamente
Leia maisComputação 1 - Python Aula 11 - Teórica. programa principal. João Carlos, Carla Delgado, Ana Luisa Duboc 1/ 29
Computação 1 - Python Aula 11 - Teórica Interação com o usuário e programa principal 1/ 29 print: Usado para imprimir informações na tela. >>> print "Qual o seu nome?" Qual o seu nome? # Função que soma
Leia maisINTRODUÇÃO À COMPUTAÇÃO - RESUMO E EXERCÍCIOS* P2
INTRODUÇÃO À COMPUTAÇÃO - RESUMO E EXERCÍCIOS* P2 *Exercícios de provas anteriores escolhidos para você estar preparado para qualquer questão na prova. Resoluções em simplificaaulas.com. Listas(= tipo
Leia maisOficina de Python Prof. Me. José Carlos Perini
Oficina de Python Prof. Me. José Carlos Perini Prof. José Carlos Perini Formação em Análise de Sistemas Univ. S. Francisco Pós em Administração Universidade S. Francisco Mestrado em Ciência da Computação
Leia maisTCC 00308: Programação de Computadores I Organização de programas em Python
TCC 00308: Programação de Computadores I 2017.1 Organização de programas em Python Vamos programar em Python! Como um programa é organizado? Quais são os tipos de dados disponíveis? Como variáveis podem
Leia maisOficina de Python Prof. Me. José Carlos Perini
Oficina de Python Prof. Me. José Carlos Perini Prof. José Carlos Perini Formação em Análise de Sistemas Univ. S. Francisco Pós em Administração Universidade S. Francisco Mestrado em Ciência da Computação
Leia maisIntrodução. O BOCA Online Contest Administrator é um sistema de correção online de códigos utilizado em competições de programação de computadores.
Aula BOCA Introdução O BOCA Online Contest Administrator é um sistema de correção online de códigos utilizado em competições de programação de computadores. A correção é feita através de casos de teste:
Leia maisIntrodução a Programação
Introdução a Programação Prof. André Gustavo Duarte de Almeida andre.almeida@ifrn.edu.br docente.ifrn.edu.br/andrealmeida Aula 02 Primeiro Programa Roteiro Primeiros Passos Variáveis Expressões Comandos
Leia mais2018 Dr. Walter F. de Azevedo Jr.
2018 Dr. Walter F. de Azevedo Jr. 000000000000111111111110001100000000000 000000000001111111111111111111000000001 000000000111111111111111111111111000000 000000000111111111111111111111111000000 000000000011111111111111111111100000000
Leia maisPython 3.x Estrutura de Repetição while
Python 3.x Estrutura de Repetição while Introdução à Ciência da Computação Prof. Edison Ishikawa Sumário Atribuição Atualizando variáveis Iterações Revisitando o laço for Laço while Rastreando um programa
Leia maisIdentificação de Padrões em Proteínas Utilizando a Ferramenta de Bioinformática CD- Search
4ª Jornada Científica e Tecnológica e 1º Simpósio de Pós-Graduação do IFSULDEMINAS 16, 17 e 18 de outubro de 2012, Muzambinho MG Identificação de Padrões em Proteínas Utilizando a Ferramenta de Bioinformática
Leia maisAmbiente de Programação, rastreamento e entrada de dados. MCG114 Programação de Computadores I. Interpretador de Comandos. Interpretador de Comandos
MCG114 Programação de Computadores I Profa. Ambiente de Programação, rastreamento e entrada de dados 1 2 Ambiente Python para Programação Ambiente Python para Programação Até agora... Comandos e funções
Leia maisProgramação de Computadores
Programação de Computadores Instituto de Computação UFF Departamento de Ciência da Computação Otton Teixeira da Silveira Filho Conteúdo Alguns Conceitos sobre Linguagens Conceito de Algoritmo Pseudocódigo
Leia maisLinguagens de Programação. Programação Funcional e Haskell Programação Interativa Thiago Alves
Linguagens de Programação Programação Funcional e Haskell Programação Interativa Thiago Alves 1 Introdução Vimos como Haskell pode ser usado para escrever programas batch que recebem todas suas entradas
Leia maisCapítulo 10. MATRIZES
Capítulo 10. MATRIZES OBJETIVOS DO CAPÍTULO Conceitos de: conjunto multidimensional (matriz), ciclo implícito, ciclo duplo Comandos do FORTRAN: DIMENSION(:,:), MATMUL 10.1 programa10a.f90 Para inicializar
Leia maisANÁLISE DE TANDEM REPEATS CODIFICANTES EM GENOMAS BACTERIANOS
5ª Jornada Científica e Tecnológica e 2º Simpósio de Pós-Graduação do IFSULDEMINAS 06 a 09 de novembro de 2013, Inconfidentes/MG ANÁLISE DE TANDEM REPEATS CODIFICANTES EM GENOMAS BACTERIANOS Vinícius A.
Leia maisPROGRAMAÇÃO DE COMPUTADORES I BCC Aula Prática 15
Exercício 1 PROGRAMAÇÃO DE COMPUTADORES I BCC701 2017-1 Aula Prática 15 No jogo Inventei, cada posição do tabuleiro é representada por suas coordenadas x e y e contém um número. O tabuleiro pode ser representado
Leia maisOficina de Introdução de Programação usando Linguagem Python Prof. Ms. Perini
Oficina de Introdução de Programação usando Linguagem Python Prof. Ms. Perini Apresentação do Professor Professor: José Carlos Perini E-mail: jose.perini@metrocamp.edu.br Blog: http://profperini.com Formação
Leia maisEntrada e saída. Marco A L Barbosa malbarbo.pro.br. Departamento de Informática Universidade Estadual de Maringá
Entrada e saída Marco A L Barbosa malbarbo.pro.br Departamento de Informática Universidade Estadual de Maringá cba Este trabalho está licenciado com uma Licença Creative Commons - Atribuição-CompartilhaIgual
Leia maisComputação 1 - Python Aula 7 - Teórica: Estrutura de Repetição com teste de parada: while 1/ 23
Computação 1 - Python Aula 7 - Teórica: Estrutura de Repetição com teste de parada: while 1/ 23 Permite que o programador especifique que o programa deve repetir um conjunto de comandos enquanto uma dada
Leia maisAula 4 Introdução ao C
Considere o nosso MSC. O Processador Central, entende o conjunto de instruções, leia, imprima, atribuição e condicional e com ela resolvemos vários problemas, construindo vários algoritmos. As instruções
Leia maisProf. Natalia Castro Fernandes Mestrado em Telecomunicações UFF 2º semestre/2012
Prof. Natalia Castro Fernandes Mestrado em Telecomunicações UFF 2º semestre/2012 Introdução Arquivos são usados para fazer operações de entrada e saída Disco, monitor, teclado, impressora Representação
Leia maisazevedolab.net 2015 Dr. Walter F. de Azevedo Jr. Aula 08 Strings, Leitura e Escrita de Arquivos
azevedolab.net 2015 Dr. Walter F. de Azevedo Jr. Aula 08 Strings, Leitura e Escrita de Arquivos 1 Classe String Em Python não precisamos definir o tipo da variável, já em Processing temos que definir os
Leia maisEstruturas de Repetição. Vanessa Braganholo
Estruturas de Repetição Vanessa Braganholo vanessa@ic.uff.br Estruturas de Repetição } Permitem que um bloco de comandos seja executado diversas vezes } Repetição condicional: executa um bloco de código
Leia maisComputação 1 - Python Aula 12 - Teórica: Interação com o usuário e programa principal. João Carlos, Carla Delgado, Ana Luisa Duboc 1/ 25
Computação 1 - Python Aula 12 - Teórica: Interação com o usuário e programa principal 1/ 25 print: Usado para imprimir informações na tela. >>> print "Qual o seu nome?" Qual o seu nome? # Função que soma
Leia maisEstruturas de Repetição. Leonardo Murta
Estruturas de Repetição Leonardo Murta leomurta@ic.uff.br Estruturas de Repetição } Permitem que um bloco de comandos seja executado diversas vezes } Dois tipos de Repetição: } Repetição condicional: executa
Leia maisProgramas Interativos
Programação Funcional DECOM UFOP 2012-1 Aula prática Capítulo 8 Prof. José Romildo Malaquias Programas Interativos Resumo Nesta aula pretende-se explorar construção de programas interativos usando ações
Leia maisTrabalhando com Arquivos
Trabalhando com Arquivos Dados de um Programa Durante sua execução, um programa típico processa um ou mais conjuntos de dados. dados de entrada (usados pelo programa) e dados de saída (gerados pelo programa)
Leia maisPYTHON - Strings. Introdução à Programação SI1
PYTHON - Strings Introdução à Programação SI1 2 Conteúdo String Conceitos Operações Métodos Exemplos Exercícios 3 String Strings no Python são elementos usados para armazenar texto A inicialização de strings
Leia mais13 a Aula - Instruções Condicionais. Ciclos. Pré-processador. Variáveis de ambiente. Mestrado em Engenharia Física Tecnológica
13 a Aula - Instruções Condicionais. Ciclos. Pré-processador. Variáveis de ambiente. Programação Mestrado em Engenharia Física Tecnológica Samuel M. Eleutério sme@tecnico.ulisboa.pt Departamento de Física
Leia maisSSC Linguagem de Programação e Aplicações
SSC0300 - Linguagem de Programação e Aplicações Professor responsável: Fernando Santos Osório Semestre: 2013/2 Prof. Auxiliar: Artur Lovato Cunha Estagiário PAE: Rafael L. Klaser Horário: Sexta Manhã 10h10
Leia maisResumindo As estruturas de repetição são utilizadas quando necessitamos realizar comandos diversas vezes
Desenvolvimento de Software I - 1 Aula 07 Estruturas de Repetição / Dialog Result 1. Definição Em ciência da computação, uma estrutura de repetição é uma estrutura de desvio do fluxo de controle presente
Leia maisPROGRAMAÇÃO EM JOGOS DIGITAIS
PROGRAMAÇÃO EM JOGOS DIGITAIS Frutuoso Silva Paradigmas de Programação Linguagem de programação Paradigmas de programação 1 Linguagem de programação! Para ser útil e confiável, uma linguagem deve ter uma
Leia maisArquivos. Introdução à Programação SI1
Arquivos Introdução à Programação SI1 1 Conteúdo Arquivos Conceitos Operações Métodos Exercícios 2 Arquivos Entrada e saída são operações de comunicação de um programa com o mundo externo Essa comunicação
Leia maisApostila - Desenvolvimento web com PHP
José Roberto Madureira Junior Adaní Cusin Sacilotti Reginaldo Sacilotti Apostila - Desenvolvimento web com PHP Primeira Edição São Paulo 2017 Sumário 1 INTRODUÇÃO AO PHP... 1 1.1 PREPARAÇÃO DO AMBIENTE
Leia mais4 MDP. void média e dp(int a[],int n,float em,float ed) 7. Variáveis auxiliares 7. Faça ed igual ao desvio padrão 6 }
1 MDP INTRODUCÃO 1 1. Introducão. Esta é uma demonstração do sistema CWEB (veja http://www.ime.usp.br/~pf/ CWEB/) de Knuth e Levy. Um programa CWEB, como este que você está lendo, é uma espécie de jogo
Leia maisPROGRAMAÇÃO DE COMPUTADORES
PROGRAMAÇÃO DE COMPUTADORES COMANDOS E FORMATOS DE ENTRADA E SAÍDA 1 COMANDOS E FORMATOS DE ENTRADA E SAÍDA Os comandos de entrada e saída, na sua forma mais simplificada, possuem a seguinte estrutura:
Leia maisSistemas Numéricos - Aritmética. Conversão de Bases. Prof. Celso Candido ADS / REDES / ENGENHARIA
Conversão de Bases 1 NOTAÇÃO POSICIONAL - BASE DECIMAL Desde os primórdios da civilização o homem adota formas e métodos específicos para representar números, para contar objetos e efetuar operações aritméticas.
Leia maisUniversidade Federal de Uberlândia Faculdade de Computação. Linguagem C: estruturas de repetição While / Do While / For
Universidade Federal de Uberlândia Faculdade de Computação Linguagem C: estruturas de repetição While / Do While / For Prof. Renato Pimentel 1 Estruturas de repetição O real poder dos computadores está
Leia maisCapítulo 11. GRÁFICOS COM WGNUPLOT
Capítulo 11. GRÁFICOS COM WGNUPLOT OBJETIVOS DO CAPÍTULO Aprender a utilizar o aplicativo Wgnuplot para fazer gráficos Aprender a utilizar o aplicativo Wgnuplot interativamente com um programa em FORTRAN
Leia maisFFI0750 BIOLOGIA MOLECULAR ESTRUTURAL
AULA PRÁTICA 1 VISUALIZAÇÃO E REPRESENTAÇÃO MOLECULAR Os programas disponíveis para representação molecular variam em função da finalidade desejada. Por exemplo, as ferramentas necessárias para estudos
Leia maisEstruturas de Repetição. Vanessa Braganholo
Estruturas de Repetição Vanessa Braganholo vanessa@ic.uff.br Estruturas de Repetição } Permitem que um bloco de comandos seja executado diversas vezes } Dois tipos de Repetição: } Repetição condicional:
Leia maisEP 2 - MAC 2166 Uma solução comentada
EP 2 - MAC 2166 Uma solução comentada Este EP foi proposto originalmente para as turmas que usam Python. Na última página há o link p/ o download do código fonte deste EP na linguagem Python e também em
Leia maisProf. Natalia Castro Fernandes Mestrado em Telecomunicações UFF 2º semestre/2012
Prof. Natalia Castro Fernandes Mestrado em Telecomunicações UFF 2º semestre/2012 Operações básicas + - / * ** ou pow(a,b) % = ==,!=, , = or, and, not Valor dos operadores 10/3 10.0/3 10/3.0 10%3
Leia maisAmbiente de desenvolvimento
Linguagem C Ambiente de desenvolvimento Um programa em C passa por seis fases até a execução: 1) Edição 2) Pré-processamento 3) Compilação 4) Linking 5) Carregamento 6) Execução Etapa 1: Criação do programa
Leia maisNESSES SLIDES, VOCÊ VAI APRENDER: Configuração de ambiente Variáveis Operadores Ambiguidade Condições e Laços
MÓDULO II NESSES SLIDES, VOCÊ VAI APRENDER: Configuração de ambiente Variáveis Operadores Ambiguidade Condições e Laços SIGA OS PRÓXIMOS PASSOS: 1. INSTALAÇÃO PYTHON : ESCOLHA A VERSÃO MAIS ATUAL E ESTÁVEL
Leia maisMANUAL DE UTILIZAÇÃO COLETOR OPTIMUS METROLOGIC SP5500
MANUAL DE UTILIZAÇÃO COLETOR OPTIMUS METROLOGIC SP5500 OBJETIVO: AUXILIAR O USUÁRIO A FAZER CONTAGENS DE ESTOQUES E IMPORTÁ-LAS PARA O SIGPOSTO. A CONTAGEM DE ESTOQUE É DIVIDIDA EM 4 ETAPAS, SENDO ELAS:
Leia maisBusca em banco de dados
Busca em banco de dados Busca em banco de dados A quantidade imensa de dados existentes nos bancos públicos torna critica a existência de ferramentas eficientes que permitam a recuperação de dados desejados
Leia maisEstruturas de Repetição
Algoritmos e Estruturas de Dados I (DCC/003) Estruturas de Repetição Aula Tópico 4 (while, for) 1 Problema 10 Suponha que soma (+) e subtração (-) são as únicas operações disponíveis em C. Dados dois números
Leia maisAprender a utilizar o aplicativo Gnuplot para fazer gráficos
Capitulo 11. GRÁFICOS COM GNUPLOT (versão 5.03) OBJETIVOS DO CAPÍTULO Aprender a utilizar o aplicativo Gnuplot para fazer gráficos Aprender a utilizar o aplicativo Gnuplot interativamente com um programa
Leia maisLINGUAGEM C: COMANDOS DE REPETIÇÃO
LINGUAGEM C: COMANDOS DE REPETIÇÃO Prof. André Backes ESTRUTURAS DE REPETIÇÃO Uma estrutura de repetição permite que uma sequência de comandos seja executada repetidamente, enquanto determinadas condições
Leia maisTutorial Visualização Gráfica com Pymol
Sobre o Pymol Tutorial Visualização Gráfica com Pymol Aula Prática 21/06/2018 PyMOL é um software de visualização molecular criado por Warren Lyford DeLano. É um programa open source, lançado sob a licença
Leia maisComputação 1 - Python Aula 8 - Teórica: Estrutura de Repetição : for 1/ 10
Computação 1 - Python Aula 8 - Teórica: Estrutura de Repetição : for 1/ 10 Estrutura de Repetição while Estrutura que permite a repetição de um conjunto de comandos. Até o momento vimos o while: while
Leia maisLINGUAGEM ALGORÍTMICA
LINGUAGEM ALGORÍTMICA Adriano Mauro Cansian André Proto UNESP - São José do Rio Preto Linguagem Computacional Introdução! Para uma melhor padronização de nosso estudos, vamos agora definir uma linguagem
Leia maisCrystal Reports - Gerando seus relatórios.
Crystal Reports - Gerando seus relatórios. O Crystal Reports é o gerador de relatórios do Visual Basic e com ele desenhamos os relatórios de nossos aplicativos. Embora possua um objeto chamado Printer
Leia mais