Tópicos e Objetivos¶Ao final desse capítulo você deverá ser capaz de: Show
Introdução¶No capítulo anterior vimos como o Python calcula o valor de uma expressão. Basicamente, uma expressão é reduzida um operador por vez, começando dos operadores com maior precedência até que a expressão seja totalmente reduzida a um único valor numérico ou booleano. Vimos também que o Python shell pode ser utilizado como “calculadora” para resolver expressões. Nessa aula vamos ver como armazenar os valores das expressões e manipular esses valores utilizando variáveis. Para isso vamos continuar utilizando o Python shell mas dessa vez dentro do Spyder. Além de começar a introduzir esse ambiente, vamos usar o Spyder para escrever e executar nossos primeiros programas. Não tenha medo do Spyder¶Como vimos, o Spyder https://www.spyder-ide.org/ é um ambiente integrado de desenvolvimento de programas em Python que vem junto com o Anaconda. Apesar da interface do Spyder parecer um tanto complexa por reunir muitas ferramentas, não se assuste. Uma vez que você entenda o funcionamento e o propósito de cada uma, elas serão muito úteis no desenvolvimento dos seus programas. Se você puder, acompanhe essa aula junto de um computador e execute os exemplos no Spyder. Mesmo que você não puder, recomendamos a leitura dessa seção para que você conheça melhor alguns recursos do Spyder. Caso você não tenha ainda instalado Python em seu computador siga as instruções na página https://panda.ime.usp.br/cc110/static/cc110/01-intro.html. Quando terminar de instalar, inicie o Spyder. A figura abaixo mostra a tela inicial do Spyder. Ela deve aparecer com essas 3 partes (que vamos chamar de janelas). Caso você não esteja vendo alguma dessas partes, clique na opção “Tools” da barra de menu (topo da janela) e depois em “Reset Spyder to factory defaults” para que o Spyder volte a ter essa configuração. A janela na parte superior direita dessa configuração inicial tem 3 “tabs”: “Variable explorer”, “File explorer” e “Help”. Selecione (clique) o tab “Variable explorer” para que o Spyder exiba os valores das variáveis que você utilizar (como na figura). O tab “Help” possui informações sobre o Spyder e o tab “File explorer” ajuda você a achar arquivos na sua máquina. A janela na parte inferior direita tem 2 tabs. Selecione o tab “IPython console”. O IPython console (que vamos chamar simplesmente de IPython) é também um Python shell, muito semelhante ao “Anaconda Prompt”, com uma interface melhorada. A principal mudança é o prompt, que indica o número de comandos executados ao invés de “>>>”. Variáveis e o comando de atribuição =¶Uma variável é simplesmente um nome que faz referência a um objeto na memória que
corresponde, por exemplo, ao resultado de alguma expressão aritmética. Para criar uma variável, precisamos associá-la a um objeto ou valor usando o comando de atribuição que corresponde ao símbolo Para entender como utilizar esse comando, observe a sequência de comandos digitados na janela do IPython na figura 3.2 a seguir, que mostra as janelas “Variable explorer” e “IPython console” do Spyder (as duas janelas do lado direito) após a execução dos comandos. Procure executar no Spyder esses comandos para entender melhor o que está acontecendo. Quando o Python é iniciado nenhuma variável está definida. Assim ao digitarmos a palavra (nome da variável) O comando de atribuição digitado na linha [2] faz com que a variável com nome Observe que o comando de atribuição na linha [2] não gera uma saída, ou linha com A linha [4] é semelhante à linha [2] e cria uma nova variável de
nome A linha [5] mostra como uma variável pode ser atualizada. Primeiro a expressão à direita é calculado usando o valor atual de A linha [6] mostra o novo valor de Nomes de variáveis Nesse curso o nome de uma variável será sempre iniciada por uma letra minúscula e poderá ser seguida por outras letras minúsculas e números, como em: Escolha sempre um nome significativo ou comum, para facilitar o entendimento sobre o que variável representa ou
realiza. Por exemplo, Vamos chamar
de constantes variáveis que não devem mudar de valor após serem inicializadas. Para indicar uma constante utilizaremos nomes formados por todas as letras em maiúscula, como por exemplo ( Tipos¶Vimos que as expressões aritméticas reduzem a expressão a um valor numérico. Esse valor numérico pode ser do tipo inteiro ou real. Internamente, cada tipo de dado (que vamos chamar genericamente de classe) é representado de forma diferente e possue um conjunto distinto de operações. Por serem numéricos, as operações com inteiros e reais são semelhantes e podemos até misturar inteiros com reais nas expressões aritméticas. Nesse caso, o resultado é dado usando o tipo mais genérico (no caso, como um número real). A linha [8] na janela do IPython da figura 3.2 mostra a função type() do Python que devolve o tipo (ou classe) de um objeto, no caso o tipo do valor associado a Em Python, números inteiros são da classe int e números reais são da classe float (pois a representação de números reais é realizada em notação com ponto flutuante ou floating point). Já os valores booleanos são da classe bool. Como dissemos anteriormente, o comportamento do IPython Console é um pouco diferente do Python shell, que vai além do “>>>” como prompt. A sessão de Python shell a seguir ilustram como ele se comporta ao usarmos a função type() (experimente!). >>> type(2) <class 'int'> >>> type(2.0) <class 'float'> >>> type(True) <class 'bool'> >>> dois = 2.0 >>> type(dois) <class 'float'> Por simplicidade e para evitar alguma confusão que as linhas numeradas do IPython possam gerar, vamos utilizar frequentemente o Python shell para ilustrar alguns exemplos desse livro. No entanto, continuamos a recomendar que você utilize o Spyder (e o IPython no Spyder) para desenvolver os seus programas. Tipo string (str)¶Um outro tipo que vamos utilizar bastante é chamado de “string” e representado por >>> carmem = "Carme Miranda" >>> carmem 'Carme Miranda' >>> lata = "d'água" >>> lata "d'água" >>> seq = ' 1, "dois", 3' >>> seq ' 1, "dois", 3' >>> type(seq) <class 'str'> É possível concatenar duas strings usando o operador >>> p = "Pedro" >>> a = "Álvares" >>> c = "Cabral" >>> p + a 'PedroÁlvares' >>> nome = p + ' ' + a + c >>> nome 'Pedro ÁlvaresCabral' Observe que os caracteres em branco são parte da string. Assim, a concatenação de Concatenação ou Soma? O operador >>> 'Pedro' + 3 Traceback (most recent call last): File "<stdin>", line 1, in <module> TypeError: can only concatenate str (not "int") to str >>> 'Pedro ' * 3 'Pedro Pedro Pedro' No entanto, é possível realizar múltiplas concateções usando o operador Conversão entre tipos¶O capítulo anterior mostrou como o Python calcula valores de expressões aritméticas, lógicas e relacionais, que resultam em valores dos tipos: Durante o cálculo de uma expressão, o Python precisa decidir também o tipo do
valor calculado. Por exemplo, qual o tipo do valor resultante de “4 * 2”? De forma geral, podemos dizer que o Python procura manter o tipo dos operandos. Assim, o resultado teria valor 8 do tipo No entanto a expressão “4 / 2” tem o valor 2.0 do tipo >>> 4 * 2 8 >>> 4 / 2 2.0 >>> 4 // 2 2 >>> 2 + 3 * 4 14 >>> 2 + 3 * 4 / 1 14.0 O resultado de “4/2” é A conversão entre tipos nativos do Python pode ser realizada usando as funções de mesmo nome como mostra os exemplos abaixo. >>> 4 / 2 2.0 >>> int(4/2) 2 >>> float(2 * 4) 8.0 Funções de entrada e saída de texto¶Funções de entrada e saída permitem que programas troquem mensagens entre si ou que programas troquem mensagens com os usuários. Nesse curso, como os programas serão executados no Python shell (ou IPython), vamos utilizar a função Função input()¶Para usar a função A função Função print()¶Para usar a função print( lista_de_valores_separada_por_vírgulas ) A função A figura 3.3 ilustra como utilizar as funções Observe que a função Esse comportamento pode ser modificado definindo alguns parâmetros extras, como
Laboratório: Usando o editor do Spyder para escrever programas em Python¶Vamos agora escrever um programa simples utilizando o Spyder. O programa deve ler dois inteiros Uma primeira tentativa pode ser a seguinte: a = input("Digite o valor de a: ") b = input("Digite o valor de b: ") soma = a + b print("A soma de a + b é: ", soma) Copie esse trecho de código no editor do Spyder e salve o programa. Para salvar o programa em um arquivo no computador que você estiver usando, clique na opção “File -> Save as” na barra de menu do Spyder. O nome precisa terminar com a extensão “.py” para indicar que é um arquivo em Python, como “primeiro_prog.py”. Depois de salvo, execute o programa utilizando a opção “Run -> Run” do menu (ou use a tecla de atalho ‘F5’). O Spyder oferece vários “atalhos” (combinações de teclas) que você pode aprender para agilizar o seu trabalho. Essas combinações de teclas existentes são mostradas no canto direito de cada opção do menu. O programa é executado no Python shell ou, nesse caso, no IPython Console que vamos chamar simplesmente de Python. Se você digitou esse programa exatamente como ilustrado, o Python deve indicar um erro de tabulação (IndentationError) no console ou shell. Isso porque a coluna onde cada linha inicia indica ao Python a que bloco a linha pertence. A primeira linha de código precisa começar na primeira coluna do editor (ou seja, sem nenhum espaço no início da linha). Para corrigir esse problema, remova todos os espaços iniciais de todas as linhas como: a = input("Digite o valor de a: ") b = input("Digite o valor de b: ") soma = a + b print("A soma de a + b é: ", soma) salve e execute novamente. O Python não deve indicar nenhum erro dessa vez. Se para Isso porque é “esquecemos” que a função
Nesse programa, Salve e execute esse programa e verifique se ele se comporta como esperado. Exercícios online¶O objetivo do laboratório foi mostrar como usar o Spyder para escrever os seus programas. Esse deve ser o modo preferível para acompanhar o livro em papel. Caso você esteja acompanhando o livro online, vários dos exercícios programa no restante desse livro utilizam as ferramentas desenvolvidas pelo projeto Runestone. Essas ferramentas permitem que você resolva os exercícios online, dentro de seu próprio navegador. Uma dessas ferramentas online é o activecode. Caso você esteja acompanhando esse livro online, use a janela do activecode a seguir para ler e imprimir a soma de dois números como no laboratório. Tentativa 0: execute o programa abaixo e veja o que acontece. Clique no botão “Run” para executar esse programa. Depure o programa¶Depurar (às vezes chamado de debugar, do inglês debug), é a atividade de corrigir problemas do programa. O primeiro bug desse programa é sintático. Para corrigir esse problema basta corrigir a
tabulação e clique em RUN para executar o programa. Após corrigido o erro sintático, execute-o novamente e veja que a mensagem de saída é simplesmente todo o texto fornecido à função Tentativa 1: execute o programa abaixo e veja o que acontece. Observe que o print recebeu dois valores separados por vírgula:
A string é impressa diretamente sem as aspas (pois esse é o seu valor) e, ao invés de imprimir a string “soma”, o print imprime o valor da variável. Mas e como imprimir os valores de Tentativa 2: execute o programa abaixo e veja o que acontece. Podemos quebrar ainda mais a lista de valores passada ao print, com strings e variáveis, para que a mensagem fique mais clara. Mas como fazer com que os valores a serem somados sejam definidos por um usuário? Tentativa 3: execute o programa abaixo e veja o que acontece. Utilizamos a função Precisamos, portanto, de um maneira para converter uma string em um número, para que o Python obtenha a soma desses números. Tentativa 4: execute o programa abaixo e veja o que acontece. A função Tentativa 5: execute o programa abaixo e veja o que acontece. Para saber mais¶
Qual função é utilizada para converter o texto recebido para todas as letras maiúsculas PHP?Para realizar o controle de caracteres maiúsculos e minúsculos o PHP disponibiliza diversas funções como: lcfirst, ucfirst, ucwords, strtolower, strtoupper e mb_strtoupper. Estas 5 funções realizam basicamente alteração de caracteres maiúsculas para minusculas e vice-versa.
Qual é a função que transforma todas as letras de uma string para maiúsculas?toUpperCase() O método toUpperCase() retorna o valor da string original convertido em letras maiúsculas.
Qual a função do Strtoupper?A função strtoupper() é usada para converter uma string em maiúsculas. Esta função recebe uma string como parâmetro e converte todos os alfabetos ingleses minúsculos presentes na string em maiúsculas. Todos os outros caracteres numéricos ou especiais na string permanecem inalterados.
Como transformar a primeira letra em maiúscula no PHP?No PHP é possível colocar a primeira letra maiúscula tanto no início da primeira letra do texto ou em todas as iniciais de um determinado texto, para isso basta usar os comandos ucfirst e ucwords respectivamente.
|