Aulas do bloco

← Todas as aulas
Pythonaula 224/07/20261h34

Strings, variáveis e concatenação

Detalha o primeiro contato pre1tico com strings, varie1veis, concatena30o com + incluindo o espa0o esquecido, distin30o entre texto e nfamero com ce1lculo de idade e regras de snake_case no Deep Note, com corre30o de erro de aspas e execu30o sequencial; traz o crite9rio de que atraso no TP limita a nota final e o cronograma de que o TP1 sere1 lido na semana seguinte.

▶ Abrir gravaçãoIniciar exercíciosAlta77/1000/24 exercícios

Para revisar rápido

Resumo da aula

7 pontos
  • Priorize a aula, depois as leituras e só então as trilhas; o TP1 será lido na semana que vem e atraso limita a nota máxima.

  • No Deep Note, cada aula é um projeto; nesta aula foi criado o projeto aula 2 com um bloco de código.

  • print() é uma função escrita em minúsculas que recebe argumentos entre parênteses e mostra o resultado na saída.

  • Texto em Python é string e vai entre aspas simples ou duplas, sem misturar abertura e fechamento.

  • Variável é uma etiqueta que guarda um valor e evita repetir o mesmo texto várias vezes.

  • Concatenação junta strings com +; o espaço entre palavras só aparece se for pedido explicitamente.

  • Números ficam sem aspas e aceitam contas; código bom é legível, com nomes em minúsculas e underscore.

Guia de estudo

Organização da disciplina e o projeto no Deep Note

Esta aula começa alinhando prioridades porque, no início do curso, é fácil se perder em material extra. A ordem de estudo é aula, depois leitura e, por último, trilha. As trilhas funcionam melhor como consulta, não como caminho principal. Nesta primeira semana não há atividade para entregar: o objetivo é se familiarizar com o material. O TP1 será lido com a turma na semana que vem. O aviso prático é sobre prazo: entregar TP atrasado não reprova sozinho, mas limita a nota máxima da disciplina. Foi reforçado que a ideia é aprovar e que quem precisar de chances terá chances. Um material extra recomendado é o RealPython (realpython.com), com bastante conteúdo gratuito. Todas as aulas desta disciplina serão no Deep Note. Lá, cada projeto corresponde a algo que se quer fazer; nesta disciplina, cada aula é um projeto. Foi criado o projeto aula 2, nomeado com a data 24/07/2026, com um bloco de código. As barras laterais podem ser escondidas arrastando para o lado ou com dois cliques na borda, para liberar espaço de tela. A próxima aula é terça-feira.

Primeiro bloco no projeto aula 2

print('formar aura')

No bloco de código do projeto, print mostra a mensagem na caixinha de saída. A função vai em minúsculas e o texto fica entre parênteses e aspas.

Revisão do print(), parâmetros e aspas

Função é um bloco que executa uma tarefa. Para funcionar, ela recebe informações chamadas parâmetros ou argumentos, que ficam entre parênteses. print() é a função que imprime ou mostra uma mensagem na tela; o resultado aparece na saída. O nome precisa ser exatamente print, em minúsculas: com P maiúsculo não funciona, porque Python diferencia maiúsculas de minúsculas. Se o código não segue as regras da linguagem, ocorre erro de sintaxe, comparado a desrespeitar as normas da língua portuguesa numa redação. Texto precisa de aspas para delimitar onde começa e termina, porque linguagens de programação são inimigas da ambiguidade. Aspas simples e aspas duplas são válidas; o que não pode é abrir com um tipo e fechar com o outro. O importante é ser consistente. Se o texto contém uma aspa simples por dentro, a string deve ser delimitada com aspas duplas, e vice-versa; caso contrário o Python se perde e acusa erro de sintaxe. A mensagem dentro dos parênteses é o próprio parâmetro passado para o print. Também funciona passar um inteiro ou outro tipo, não só texto.

Aspas iguais abrindo e fechando

print('formar aura')

A string começa e termina com o mesmo tipo de aspas. Esse texto é o parâmetro que o print precisa para mostrar a mensagem na saída.

Apóstrofo dentro da string

print("Nirvana é melhor que Guns N' Roses")

O texto tem uma aspa simples no Guns N’ Roses. Delimitar com aspas simples geraria erro de sintaxe; aspas duplas por fora resolvem, porque o Python não confunde o limite da string com o apóstrofo interno.

String e tipo primitivo

Em programação, texto se chama string: uma sequência de caracteres entre aspas. A tradução ao pé da letra é barbante. String é um tipo primitivo, ou seja, uma unidade pequena de informação usada para construir unidades mais complexas. Inteiros também são tipos primitivos. Cuidado com o vocabulário: lang é abreviação de programming language, linguagem de programação. Python é uma lang, e isso não é a mesma coisa que string. Quando alguém usa só aspas duplas por hábito de outra linguagem, isso é preferência. Misturar os dois tipos de aspas é sintaticamente válido, mas fica feio. O critério desta aula é consistência: escolha um estilo e mantenha.

String é texto entre aspas

print('PC é melhor que Mac')

Tudo entre aspas é string. Sem aspas, o Python não saberia onde o texto começa e termina e trataria as palavras como nomes de coisas do programa.

Variáveis, atribuição e execução sequencial

Repetir várias vezes o mesmo print com o mesmo texto é um bad smell: um sinal de que o código não está bom e a abordagem está errada. A variável resolve isso. Variável é uma etiqueta que se dá a um valor para guardá-lo e acessá-lo depois. O sinal de igual não é igualdade matemática: deve ser lido como atribuição. Python lê o código de cima para baixo, linha por linha. A variável criada fica na memória mesmo que nunca seja usada. No Python não existe constante: toda variável pode ser alterada depois, tudo é mutável. Ao terminar a execução, as variáveis são apagadas da memória; não vão para o SSD nem ficam registradas no computador. Aspas só servem para criar strings. Ao citar o nome da variável, não se usam aspas: o Python busca o valor guardado e o coloca no lugar. Por enquanto, os nomes seguem estas regras: só letras minúsculas, sem acento, sem caracteres especiais e sem começar com número; palavras separadas por underline. Esse padrão se chama snake_case e é o padrão do curso, não camelCase. Espaços em branco no código são opcionais: o Python aceita código sem eles. Eles existem para deixar o código mais legível.

Uma etiqueta no lugar da repetição

mensagem_verdadeira = 'PC é melhor que Mac'
print(mensagem_verdadeira)
print(mensagem_verdadeira)

A primeira linha atribui o texto à etiqueta mensagem_verdadeira. Os prints seguintes não repetem a frase entre aspas: buscam o valor guardado. Sem aspas no nome, o Python não cria outra string; ele usa o que já está na memória.

Concatenação de strings na prática

Concatenação junta duas strings com o sinal de +. É como colar recortes de revista. A linguagem faz exatamente o que foi mandado: se você não pedir o espaço entre nome e sobrenome, ela não coloca. Por isso se diz que não existe óbvio na programação. Colocar o espaço dentro da string do sobrenome funciona, mas cria acoplamento: o sobrenome sempre viria com espaço antes, mesmo quando você não quiser. Existe uma forma mais elegante e sucinta, chamada forma pythonica, para dar esse espaço, mas ela fica para outra aula. String vazia é duas aspas juntas, sem nada dentro; no exemplo da aula, ao tirar o espaço da concatenação os nomes ficaram colados.

Juntar sem pedir o espaço

nome = 'Eduarda'
sobrenome = 'Velho'
print(nome + sobrenome)

O + cola as duas strings. Como nenhum espaço foi pedido, a saída é EduardaVelho. O Python não inventa separação entre palavras.

Espaço pedido de forma explícita

nome = 'Eduarda'
sobrenome = 'Velho'
print(nome + ' ' + sobrenome)

O espaço é uma string no meio da concatenação. Assim o espaço não fica preso ao sobrenome e só entra quando você realmente junta as duas partes.

Números, operações e legibilidade

Números inteiros são escritos sem aspas, por exemplo 2026. Entre aspas, viram texto. Use string quando a informação é textual, para juntar, recortar ou transformar. Use número quando a informação é numérica, para somar, subtrair, multiplicar ou dividir. Se os números estivessem entre aspas, a subtração não aconteceria: o Python reclamaria, porque não faz sentido subtrair texto. As operações funcionam como na matemática: resultado = 4 + 2 guarda 6; subtrair ano atual e ano de nascimento dá a idade. Na aula, 2026 menos 1995 imprimiu 31. Dá para colocar a conta direto no print, mas código muito condensado faz muita coisa em pouco espaço e aumenta a carga cognitiva. Código bom não é código compacto: é o que se lê fluido, sem gastar neurônios, porque colegas e chefe precisam entender o que está escrito. CodeGolf, a modalidade de resolver problemas com o mínimo de código possível, é hobby competitivo, não o objetivo de código real.

Número sem aspas para fazer conta

ano_atual = 2026
ano_nascimento = 1995
idade = ano_atual - ano_nascimento
print(idade)

2026 e 1995 estão sem aspas, então são números. A atribuição guarda a subtração em idade. A saída é 31. Se os anos fossem strings, a conta não faria sentido.

Conta direta no print, mais densa

print(2026 - 1995)

Também imprime 31, mas condensa atribuição e exibição na mesma linha. A versão com variáveis exige menos esforço para ler o que cada valor significa.

Avisos administrativos — 7 recados sobre prazos, regras e funcionamento do curso
  • 00:07:49 TP1 será lido com a turma na semana que vem; nesta primeira semana não há atividade para entregar, só se familiarizar com o material.
  • 00:17:10 Entreguem os TPs no prazo: atraso limita a nota máxima da disciplina (não reprova diretamente, mas limita a nota final).
  • 00:07:24 Ordem de prioridade de estudo: aulas, depois leituras, por último trilhas; trilhas funcionam melhor como material de consulta.
  • 00:08:26 Material extra recomendado: RealPython (realpython.com), com bastante conteúdo gratuito.
  • 00:18:52 Todas as aulas da disciplina serão pelo Deep Note.
  • 00:16:08 Foi reforçado que a ideia é aprovar: quem precisar de chances terá chances, e ninguém será reprovado sem querer.
  • 01:33:34 Próxima aula na terça-feira.
Perguntas de aluno — 12 perguntas respondidas na gravação

A mensagem dentro do print é o próprio parametro do print? porque geralmente funções fecham com () mas print exige a mensagem, então a mensagem é um parametro 00:31:49 · chat 00:26:09 Sim: o texto entre parênteses é a informação (o parâmetro) passada para o print.

Se eu quiser que meu texto tenha aspas, eu uso simples? 00:31:41 · chat 00:31:01 Depende: string que contém aspa simples deve ser delimitada com aspas duplas, e a que contém aspa dupla, com aspas simples.

Dá para passar um int ou outro valor para o print? 00:32:35 Sim, funciona com qualquer tipo: inteiros, listas, tuplas, dicionários, etc.

É normal poder usar as duas versões das aspas? Quando tava no técnico o professor passou em C só com a dupla e eu nao sei agora se era preferencia do cara 00:34:30 · chat 00:34:09 Era preferência. O que importa é a consistência; misturar os dois tipos é sintaticamente válido, mas fica feio.

o python ler a variavel mesmo se ela nunca for chamada? 00:56:17 · chat 00:53:49 Sim: o Python lê o código de cima para baixo e a variável criada fica na memória até o fim do programa.

Felipe: tentei nomear a variável com um número e deu errado. Por quê? 00:57:24 Não se pode começar nome de variável com número; a regra completa será explicada mais para frente.

Um aluno de Swift: Python tem constante? 00:59:41 Não: no Python tudo é mutável, não existe variável constante.

Porque nao usou aspas? 01:06:01 · chat 01:05:37 Aspas só são usadas para criar strings; ao citar a variável, o Python busca o valor guardado e o coloca no lugar, sem aspas.

Ao invés de colocar o espaço com aspas, posso colocar o espaço lá na string do sobrenome? Colocando o espaço antes do texto 01:08:08 · chat 01:07:16 Funciona, mas cria acoplamento: o sobrenome sempre viria com espaço antes, mesmo quando você não quiser.

se os números estivessem entre "" a subtração n iria acontecer no caso ? 01:29:29 · chat 01:25:44 Isso: o Python reclamaria, porque não faz sentido subtrair texto.

Como selecionar um trecho e colocar aspas dos dois lados de uma vez? 01:30:11 Selecione o trecho com dois cliques e aperte a tecla de aspas duplas; o editor abre e fecha as aspas no trecho selecionado.

professora o que significa langs? é a mesma coisa que string? 00:36:17 · chat 00:36:10 É abreviação de programming language, linguagem de programação; string é outra coisa.

Trechos que valem reouvir — 4 momentos que mais rendem uma segunda escuta
  • 01:02:45 — Concatenação com + e o espaço esquecido: mostra que a linguagem só faz exatamente o que foi mandado.
  • 01:13:24 — Diferença entre ’=’ de igualdade e ’=’ de atribuição, e como ler o código corretamente.
  • 01:15:36 — Regra prática de nomenclatura de variáveis (minúsculas, sem acento, sem caracteres especiais, com underscore): vale para todos os exercícios.
  • 01:20:18 — Texto vs número: por que ‘2026’ entre aspas não pode participar de conta, e como decidir entre string e número.

Glossário da aula

Conceitos

Função

00:23:54

É um bloco que executa uma tarefa específica e precisa receber parâmetros para funcionar, como o print() que mostra uma mensagem na tela.

print()

00:23:50

É a função que mostra uma mensagem na tela e é usada para exibir textos, com a mensagem sempre entre parênteses e aspas.

Maiúsculas e minúsculas

00:24:13

É a regra que diferencia letras maiúsculas e minúsculas em Python e exige escrever o nome da função exatamente como foi definido, por isso print com P maiúsculo não funciona.

Parâmetro / argumento

00:24:32

É a informação que uma função precisa receber para funcionar, como a mensagem no print, e por isso sempre aparece entre parênteses.

Erro de sintaxe

00:26:00

É o erro que acontece quando o código não segue as regras do Python, como desrespeitar a gramática em uma redação, e impede a execução.

Aspas em strings

00:26:51

É a exigência de usar aspas para marcar onde o texto começa e termina, usada para evitar ambiguidade na leitura do código.

Aspas simples vs duplas

00:27:24

São as duas formas válidas de delimitar texto em Python e são usadas de forma consistente, sem nunca abrir com um tipo e fechar com o outro.

String

00:35:03

É o texto em programação, formado por uma sequência de caracteres entre aspas, e é usada como tipo primitivo para guardar informações textuais.

Tipo primitivo

00:35:55

É a pequena unidade de informação usada para construir dados mais complexos e serve de base para criar estruturas maiores, como strings e inteiros.

É a abreviação de linguagem de programação e serve para nomear a tecnologia em si, como Python, que é diferente de uma string.

Aspas dentro da string

00:40:11

É a regra de delimitar com aspas duplas um texto que contém aspa simples e vice-versa, usada para evitar erro de sintaxe no Python.

Bad smell no código

00:47:09

É o sinal de que o código não está bom e indica abordagem errada, como a repetição excessiva, usado para alertar que precisa melhorar.

Variável

00:48:08

É uma etiqueta que guarda um valor para usar depois, como mensagem = 'PC é melhor que Mac', e é usada para armazenar dados, não como igualdade matemática.

Sinal de atribuição (=)

00:51:17

É o sinal que atribui um valor a uma variável e deve ser lido como atribuição, não como igualdade, para guardar informação.

Execução sequencial

00:56:21

É a forma como o Python lê o código de cima para baixo, linha por linha, e por isso a variável criada fica guardada na memória mesmo sem uso.

Mutabilidade (sem constantes)

00:59:52

É a característica do Python de não ter constantes, onde toda variável pode ser alterada depois, por ser sempre mutável.

Concatenação

01:02:45

É a operação de juntar duas strings com o sinal de +, como colar recortes, usada para unir textos como nome + sobrenome.

'Não existe óbvio' na programação

01:05:17

É o princípio de que a linguagem faz exatamente o que foi mandado e só coloca o espaço entre nome e sobrenome se você pedir explicitamente.

Acoplamento

01:08:49

É a ligação indesejada criada ao colocar o espaço dentro da string do sobrenome, que faz ele sempre vir com espaço mesmo quando não é necessário.

Forma Pythonica

01:10:02

É a maneira mais elegante e sucinta de fazer algo em Python, usada para escrever código melhor, como para dar espaço na concatenação.

Espaços em branco no código

01:12:35

São os espaços opcionais no código que o Python aceita mesmo sem eles e são usados apenas para deixar a leitura mais legível.

String vazia

01:12:57

É o texto sem nenhum caractere, representado por duas aspas juntas, que aparece quando se tira o espaço da concatenação e os nomes ficam colados.

Regras de nomenclatura de variáveis

01:15:36

É o conjunto de regras para nomear variáveis usando só letras minúsculas sem acento ou caractere especial e separando palavras com underline, sem números por enquanto.

snake_case

01:17:38

É o padrão de nomear variáveis com letras minúsculas e underline entre palavras e é usado no curso no lugar do camelCase.

Números inteiros

01:19:11

São valores numéricos escritos sem aspas, como 2026, e são usados para cálculos, pois com aspas viram texto.

String vs número

01:20:18

É a diferença de uso entre string para tarefas com texto como juntar e recortar e número para operações matemáticas como somar e dividir.

Operações matemáticas no Python

01:22:52

São operações que funcionam como na matemática e são usadas para calcular valores, como guardar 6 em resultado = 4 + 2 ou calcular idade subtraindo anos.

Carga cognitiva

01:26:21

É o esforço extra para ler um código muito condensado que faz muita coisa em pouco espaço, por isso código bom não é o mais compacto.

Legibilidade do código

01:26:36

É a qualidade do código bom que permite leitura fluida sem grande esforço e é usada para que colegas e chefe entendam facilmente o que está escrito.

CodeGolf

01:28:03

É a modalidade competitiva e hobby que busca resolver problemas com o mínimo de código possível e não é o objetivo do código real.

Ciclo de vida das variáveis

01:29:06

É o ciclo em que as variáveis são apagadas da memória ao terminar a execução e por isso não ficam salvas no SSD nem no computador.

Saída (output)

00:30:40

É a caixinha onde aparece o resultado da execução do código e é usada para mostrar mensagens como 'formar aura'.

Projeto no Deep Note

00:21:36

É a organização do Deep Note onde cada projeto corresponde a algo que se quer fazer e é usada para separar cada conjunto de tarefas.

Barras laterais do Deep Note

00:23:02

São as barras do Deep Note que podem ser escondidas arrastando para o lado ou com dois cliques na borda para liberar espaço de tela.

Prática autocorrigida

Exercícios

0/24 concluídos
  1. Valor rotuladoLeia uma linha e guarde-a em uma variável. Mostre valor: seguido de um espaço e do texto lido, na mesma linha.facilprint()StringVariável
  2. A mesma mensagem duas vezesLeia uma única linha, guarde-a em uma variável e mostre o mesmo texto duas vezes, uma por linha.facilVariávelSinal de atribuição (=)Execução sequencial
  3. Nome e sobrenome coladosLeia um nome e um sobrenome, um por linha. Mostre os dois concatenados nessa ordem, sem acrescentar espaço.facilConcatenaçãoVariávelString
  4. Nome completo com espaçoLeia um nome e um sobrenome, um por linha. Use concatenação para mostrá-los na mesma linha, acrescentando um espaço entre eles.facilConcatenaçãoNão existe óbvio na programaçãoVariável
  5. Apóstrofo na frase da bandaLeia um adjetivo. Mostre Guns N' Roses é seguido de um espaço e do adjetivo. Use aspas duplas para delimitar o texto que contém o apóstrofo.facilAspas dentro da stringAspas simples vs duplasConcatenação
  6. Idade pela subtração dos anosLeia o ano atual e o ano de nascimento, um inteiro por linha. Mostre a diferença entre os anos, desconsiderando mês e dia.facilNúmeros inteirosOperações matemáticas no PythonString vs número
  7. Saudação concatenadaLeia uma linha. Use concatenação com + para mostrar ola, um espaço e o texto lido, na mesma linha.facilConcatenaçãoStringprint()
  8. Texto colado nele mesmoLeia uma linha uma única vez. Use + para concatenar o texto com ele mesmo e mostrar as duas cópias na mesma linha.facilConcatenaçãoVariávelSinal de atribuição (=)
  9. Duas partes com hífenLeia duas linhas. Use + para mostrar o primeiro texto, um hífen e o segundo texto, sem acrescentar espaços.facilConcatenaçãoStringExecução sequencial
  10. It's seguido do nomeLeia uma linha. Use concatenação com + para mostrar It's seguido de um espaço e do texto lido. O I é maiúsculo e o t é minúsculo.facilAspas dentro da stringConcatenaçãoAspas simples vs duplas
  11. Três palavras com espaçoLeia três linhas. Use + para reuni-las em uma linha, acrescentando um espaço entre cada par de textos.mediaConcatenaçãoVariávelAcoplamento
  12. Concatenação nos dois sentidosLeia duas linhas. Use + para mostrar primeiro os textos concatenados na ordem de leitura e depois na ordem inversa, uma combinação por linha.mediaConcatenaçãoVariávelExecução sequencial
  13. Nome e cidade na mesma linhaLeia um nome e uma cidade, um por linha. Use + para mostrá-los na mesma linha, separados por vírgula e um espaço.mediainputconcatenaçãostring
  14. Medida seguida da unidadeLeia uma medida como texto. Use concatenação para mostrar a medida seguida de um espaço e cm.mediainputconcatenaçãostring
  15. Texto entre colchetesLeia uma linha. Use + para mostrar o texto entre colchetes: [ antes e ] depois, sem acrescentar espaços.mediaconcatenaçãovariávelstring
  16. Duas linhas na ordem inversaLeia duas linhas e mostre primeiro a segunda, depois a primeira, uma por linha.mediainputexecução de cima para baixoprint
  17. Primeira e terceira de quatroLeia quatro linhas. Mostre a primeira e a terceira, uma por linha, e descarte a segunda e a quarta.mediainputexecução sequencialprint
  18. Somente a última de cincoLeia cinco linhas e mostre somente a quinta. Consuma e descarte as quatro primeiras.mediainputprintexecução de cima para baixo
  19. Somente a linha do meioLeia três linhas e mostre somente a segunda. A primeira e a terceira devem ser lidas e descartadas.mediainputprintexecução de cima para baixo
  20. Segunda antes da primeiraLeia duas linhas e mostre-as na ordem inversa, uma por linha.mediainputprintordem das instruções
  21. Linhas ímpares de cincoLeia cinco linhas. Mostre apenas as posições 1, 3 e 5, nessa ordem, uma por linha.dificilinputprintseleção de linhas
  22. Última sobe e as outras descemLeia três linhas e mostre-as na ordem 3, 1, 2, uma por linha.dificilinputprintreordenação
  23. As duas do meio de quatroLeia quatro linhas. Descarte os extremos e mostre somente a segunda e a terceira, uma por linha.dificilinputprintdescartar linhas
  24. Cruzar dois paresLeia quatro linhas e mostre-as na ordem 3, 2, 1, 4, uma por linha.dificilinputprintreordenação