|
| 1 | +<div align="center"> |
| 2 | + <h1> 30 Dias de Python: Dia 2 - Variaveis, Builtin Functions</h1> |
| 3 | + <a class="header-badge" target="_blank" href="https://www.linkedin.com/in/asabeneh/"> |
| 4 | + <img src="https://img.shields.io/badge/style--5eba00.svg?label=LinkedIn&logo=linkedin&style=social"> |
| 5 | + </a> |
| 6 | + <a class="header-badge" target="_blank" href="https://twitter.com/Asabeneh"> |
| 7 | + <img alt="Twitter Follow" src="https://img.shields.io/twitter/follow/asabeneh?style=social"> |
| 8 | + </a> |
| 9 | + |
| 10 | +<sub>Author: |
| 11 | +<a href="https://www.linkedin.com/in/asabeneh/" target="_blank">Asabeneh Yetayeh</a><br> |
| 12 | +<small> Segunda edição: July, 2021</small> |
| 13 | +</sub> |
| 14 | + |
| 15 | +</div> |
| 16 | + |
| 17 | +[<< Dia 1](../README.md) | [Dia 3 >>](../03_Day_Operators/03_operators.md) |
| 18 | + |
| 19 | + |
| 20 | + |
| 21 | +- [📘 Dia 2](#-dia-2) |
| 22 | + - [Built in functions](#built-in-functions) |
| 23 | + - [Variaveis](#Variaveis) |
| 24 | + - [Declarando múltiplas váriaveis em uma linha](#Declarando-múltiplas-variaveis-em-uma-linha) |
| 25 | + - [Tipos de dados](#Tipos-de-Dados) |
| 26 | + - [Checando tipos de dados e type Casting](#Checando-tipos-de-dados-e-Casting) |
| 27 | + - [Numeros](#Numeros) |
| 28 | + - [💻 Exercicios - Dia 2](#-Exercicios---Dia-2) |
| 29 | + - [Exercicios: Level 1](#Exercicios-level-1) |
| 30 | + - [Exercicios: Level 2](#Exercicios-level-2) |
| 31 | + |
| 32 | +# 📘 Dia 2 |
| 33 | + |
| 34 | +## Built in functions |
| 35 | + |
| 36 | +Em Python, temos muitas built-in functions. As built-in functions estão disponíveis globalmente para seu uso, o que significa que você pode fazer uso das built-in functions sem importar ou configurar. Algumas das built-in functions do Python mais usadas são as seguintes: _print()_, _len()_, _type()_, _int()_, _float()_, _str()_, _input()_, _list()_, _dict()_, _min()_, _max()_, _sum()_, _sorted()_, _open()_, _file()_, _help()_ e _dir()_ . Na tabela a seguir, você verá uma lista gigantesca de funções do Python retiradas da [documentação do python](https://docs.python.org/3.9/library/functions.html). |
| 37 | + |
| 38 | + |
| 39 | +Vamos abrir o shell do Python e começar a usar algumas built-in functions. |
| 40 | + |
| 41 | + |
| 42 | + |
| 43 | +Vamos praticar mais usando diferentes built-in functions |
| 44 | + |
| 45 | + |
| 46 | + |
| 47 | +Como você pode ver no terminal acima, O Python possui palavras reservadas. Não usamos palavras reservadas para declarar variáveis ou funções. Abordaremos as variáveis na próxima seção. |
| 48 | + |
| 49 | +Acredito que agora você já esteja familiarizado com as built-in functions. Vamos fazer mais uma prática de built-in functions e passaremos para a próxima seção. |
| 50 | + |
| 51 | + |
| 52 | + |
| 53 | +## Variaveis |
| 54 | + |
| 55 | +As variáveis armazenam dados na memória do computador. Variáveis mnemônicas são recomendadas para uso em muitas linguagens de programação. Uma variável mnemônica é um nome de variável que pode ser facilmente lembrado e associado. Uma variável refere-se a um endereço de memória no qual os dados são armazenados. |
| 56 | +Número no início, caractere especial e hífen não são permitidos ao nomear uma variável. Uma variável pode ter um nome curto (como x, y, z), mas um nome mais descritivo tipo (nome, sobrenome, idade, país) é altamente recomendado. |
| 57 | + |
| 58 | +Regras da nomeclatura de variáveis no Python |
| 59 | + |
| 60 | +- O nome de uma variável deve começar com uma letra ou underline |
| 61 | +- O nome de uma variável não pode começar com um número |
| 62 | +- Um nome de variável só pode conter caracteres alfanuméricos e underlines (A-z, 0-9 e \_ ) |
| 63 | +- O interpretador Python diferencia maiúsculas de minúsculas (nome, nome, nome e PRIMEIRO NOME) são variáveis diferentes) então tome cuidado com isso. |
| 64 | + |
| 65 | +Aqui estão alguns exemplos de nomes de variáveis válidos: |
| 66 | + |
| 67 | +```shell |
| 68 | +firstname |
| 69 | +lastname |
| 70 | +age |
| 71 | +country |
| 72 | +city |
| 73 | +first_name |
| 74 | +last_name |
| 75 | +capital_city |
| 76 | +_if # if we want to use reserved word as a variable |
| 77 | +year_2021 |
| 78 | +year2021 |
| 79 | +current_year_2021 |
| 80 | +birth_year |
| 81 | +num1 |
| 82 | +num2 |
| 83 | +``` |
| 84 | + |
| 85 | +Nomes invalidos de variaveis |
| 86 | + |
| 87 | +```shell |
| 88 | +first-name |
| 89 | +first@name |
| 90 | +first$name |
| 91 | +num-1 |
| 92 | +1num |
| 93 | +``` |
| 94 | + |
| 95 | +Usaremos o estilo de nomenclatura de variáveis Python padrão que foi adotado por muitos desenvolvedores Python. Os desenvolvedores Python usam a convenção de nomenclatura de variáveis snake case (snake_case). Usamos underline após cada palavra para uma variável contendo mais de uma palavra (por exemplo, primeiro_nome, sobrenome, velocidade_de_rotação_do_motor). O exemplo abaixo é um exemplo de nomenclatura padrão de variáveis, o underline é necessário quando o nome da variável tem mais de uma palavra (isso é uma boa prática). |
| 96 | + |
| 97 | +Quando atribuímos um determinado tipo de dado a uma variável, isso é chamado de declaração de variável. Por exemplo, no exemplo abaixo, meu primeiro nome é atribuído a uma variável first_name. O sinal de igual é um operador de atribuição. Atribuir significa armazenar dados na variável (dar um valor a uma variavel). O sinal de igual em Python não é igualdade como em Matemática. |
| 98 | + |
| 99 | +_Exemplo:_ |
| 100 | + |
| 101 | +```py |
| 102 | +# Variables in Python |
| 103 | +first_name = 'Asabeneh' |
| 104 | +last_name = 'Yetayeh' |
| 105 | +country = 'Finland' |
| 106 | +city = 'Helsinki' |
| 107 | +age = 250 |
| 108 | +is_married = True |
| 109 | +skills = ['HTML', 'CSS', 'JS', 'React', 'Python'] |
| 110 | +person_info = { |
| 111 | + 'firstname':'Asabeneh', |
| 112 | + 'lastname':'Yetayeh', |
| 113 | + 'country':'Finland', |
| 114 | + 'city':'Helsinki' |
| 115 | + } |
| 116 | +``` |
| 117 | + |
| 118 | +Vamos usar as funções _print()_ e _len()_. A função de impressão aceita um número ilimitado de argumentos. Um argumento é um valor que podemos passar ou colocar entre parênteses, veja o exemplo abaixo. |
| 119 | + |
| 120 | +**Exemplo:** |
| 121 | + |
| 122 | +```py |
| 123 | +print('Hello, World!') # The text Hello, World! is an argument |
| 124 | +print('Hello',',', 'World','!') # it can take multiple arguments, four arguments have been passed |
| 125 | +print(len('Hello, World!')) # it takes only one argument |
| 126 | +``` |
| 127 | + |
| 128 | +Vamos imprimir e também encontrar o comprimento das variáveis declaradas no topo: |
| 129 | + |
| 130 | +**Exemplo:** |
| 131 | + |
| 132 | +```py |
| 133 | +# Printing the values stored in the variables |
| 134 | + |
| 135 | +print('First name:', first_name) |
| 136 | +print('First name length:', len(first_name)) |
| 137 | +print('Last name: ', last_name) |
| 138 | +print('Last name length: ', len(last_name)) |
| 139 | +print('Country: ', country) |
| 140 | +print('City: ', city) |
| 141 | +print('Age: ', age) |
| 142 | +print('Married: ', is_married) |
| 143 | +print('Skills: ', skills) |
| 144 | +print('Person information: ', person_info) |
| 145 | +``` |
| 146 | + |
| 147 | +### Declarando múltiplas variaveis em uma linha |
| 148 | + |
| 149 | +Múltiplas variáveis também podem ser declaradas em uma linha: |
| 150 | + |
| 151 | +**Exemplo:** |
| 152 | + |
| 153 | +```py |
| 154 | +first_name, last_name, country, age, is_married = 'Asabeneh', 'Yetayeh', 'Helsink', 250, True |
| 155 | + |
| 156 | +print(first_name, last_name, country, age, is_married) |
| 157 | +print('First name:', first_name) |
| 158 | +print('Last name: ', last_name) |
| 159 | +print('Country: ', country) |
| 160 | +print('Age: ', age) |
| 161 | +print('Married: ', is_married) |
| 162 | +``` |
| 163 | + |
| 164 | +Podemos obter a entrada do usuário usando a função _input()_. Vamos atribuir os dados que obtemos de um usuário às variáveis first_name e age. |
| 165 | + |
| 166 | +**Exemplo:** |
| 167 | + |
| 168 | +```py |
| 169 | +first_name = input('What is your name: ') |
| 170 | +age = input('How old are you? ') |
| 171 | + |
| 172 | +print(first_name) |
| 173 | +print(age) |
| 174 | +``` |
| 175 | + |
| 176 | +## Tipos de Dados |
| 177 | + |
| 178 | +Existem vários tipos de dados no Python. Para identificar o tipo de dados, usamos a função _type_. Gostaria de pedir que você se concentrasse em compreender muito bem os diferentes tipos de dados. Quando se trata de programação, tudo se resume a tipos de dados. Introduzi os tipos de dados logo no início e depois veremos de novo, porque cada tópico está relacionado aos tipos de dados. Abordaremos os tipos de dados com mais detalhes em suas respectivas seções. |
| 179 | + |
| 180 | +## Checando tipos de dados e Casting |
| 181 | + |
| 182 | +- Checando tipos de dados: Para verificar o tipo de dados de determinados dados/variáveis, usamos o _type_ |
| 183 | + **Exemplo:** |
| 184 | + |
| 185 | +```py |
| 186 | +# Different python data types |
| 187 | +# Let's declare variables with various data types |
| 188 | + |
| 189 | +first_name = 'Asabeneh' # str |
| 190 | +last_name = 'Yetayeh' # str |
| 191 | +country = 'Finland' # str |
| 192 | +city= 'Helsinki' # str |
| 193 | +age = 250 # int, it is not my real age, don't worry about it |
| 194 | + |
| 195 | +# Printing out types |
| 196 | +print(type('Asabeneh')) # str |
| 197 | +print(type(first_name)) # str |
| 198 | +print(type(10)) # int |
| 199 | +print(type(3.14)) # float |
| 200 | +print(type(1 + 1j)) # complex |
| 201 | +print(type(True)) # bool |
| 202 | +print(type([1, 2, 3, 4])) # list |
| 203 | +print(type({'name':'Asabeneh','age':250, 'is_married':250})) # dict |
| 204 | +print(type((1,2))) # tuple |
| 205 | +print(type(zip([1,2],[3,4]))) # set |
| 206 | +``` |
| 207 | + |
| 208 | +- Type Casting: Podemos converter um tipo de dado em outro tipo de dado. Nós podemos usar esses tipos para fazer o casting _int()_, _float()_, _str()_, _list_, _set_ |
| 209 | + Quando fazemos operações aritméticas, os números das strings devem ser primeiro convertidos para int ou float, caso contrário, retornará um erro. Se concatenarmos um número com uma string, o número deverá primeiro ser convertido em uma string. Falaremos sobre concatenação na seção String. |
| 210 | + |
| 211 | + **Exemplo:** |
| 212 | + |
| 213 | +```py |
| 214 | +# int to float |
| 215 | +num_int = 10 |
| 216 | +print('num_int',num_int) # 10 |
| 217 | +num_float = float(num_int) |
| 218 | +print('num_float:', num_float) # 10.0 |
| 219 | + |
| 220 | +# float to int |
| 221 | +gravity = 9.81 |
| 222 | +print(int(gravity)) # 9 |
| 223 | + |
| 224 | +# int to str |
| 225 | +num_int = 10 |
| 226 | +print(num_int) # 10 |
| 227 | +num_str = str(num_int) |
| 228 | +print(num_str) # '10' |
| 229 | + |
| 230 | +# str to int or float |
| 231 | +num_str = '10.6' |
| 232 | +print('num_int', int(num_str)) # 10 |
| 233 | +print('num_float', float(num_str)) # 10.6 |
| 234 | + |
| 235 | +# str to list |
| 236 | +first_name = 'Asabeneh' |
| 237 | +print(first_name) # 'Asabeneh' |
| 238 | +first_name_to_list = list(first_name) |
| 239 | +print(first_name_to_list) # ['A', 's', 'a', 'b', 'e', 'n', 'e', 'h'] |
| 240 | +``` |
| 241 | + |
| 242 | +## Numeros |
| 243 | + |
| 244 | +Numeros e tipos de dados em python: |
| 245 | + |
| 246 | +1. Inteiros: Inteiros são considerados os(negativos, zero números positivos) |
| 247 | + Exemplo: |
| 248 | + ... -3, -2, -1, 0, 1, 2, 3 ... |
| 249 | + |
| 250 | +2. Float(Números Decimais) |
| 251 | + Exemplo: |
| 252 | + ... -3.5, -2.25, -1.0, 0.0, 1.1, 2.2, 3.5 ... |
| 253 | + |
| 254 | +3. Números Complexos |
| 255 | + Exemplo: |
| 256 | + 1 + j, 2 + 4j, 1 - 1j |
| 257 | + |
| 258 | +🌕 Você é incrível. Você acabou de completar os desafios do dia 2 e está dois passos à frente no caminho para a grandeza. Agora faça alguns exercícios para o cérebro e os músculos. |
| 259 | + |
| 260 | +## 💻 Exercicios - Dia 2 |
| 261 | + |
| 262 | +### Exercicios: Level 1 |
| 263 | + |
| 264 | +1. Dentro de 30DiasDePython crie uma pasta chamada dia_2. Dentro desta pasta crie um arquivo chamado variáveis.py |
| 265 | +2. Escreva um comentário em python dizendo: 'Dia 2/30 dias de programação em python' |
| 266 | +3. Declare uma variável de primeiro nome e atribua um valor a ela |
| 267 | +4. Declare uma variavel de sobrenome e atribua um valor a ela |
| 268 | +5. Declare uma variavel de nome completo e atribua um valor a ela |
| 269 | +6. Declare uma variavel do seu país e atribua um valor a ela |
| 270 | +7. Declare uma variavel da sua cidade e atribua um valor a ela |
| 271 | +8. Declare uma variavel da sua idade e atribua um valor a ela |
| 272 | +9. Declare uma variavel ano e atribua um valor a ela |
| 273 | +10. Declare uma variavel is_married e atribua um valor a ela |
| 274 | +11. Declare uma variavel is_true e atribua um valor a ela |
| 275 | +12. Declare uma variavel is_light_on e atribua um valor a ela |
| 276 | +13. Declare multiplas variaveis em uma linha |
| 277 | + |
| 278 | +### Exercicios: Level 2 |
| 279 | + |
| 280 | +1. Verifique o tipo de dados de todas as suas variáveis usando a função integrada type() |
| 281 | +1. Usando a função integrada _len()_, encontre o comprimento do seu primeiro nome |
| 282 | +1. Compare o comprimento do seu nome e do seu sobrenome |
| 283 | +1. Declare 5 como num_one e 4 como num_two |
| 284 | + 1. Adicione num_one e num_two e atribua o valor a uma variável total |
| 285 | + 2. Subtraia num_two de num_one e atribua o valor a uma variável diff |
| 286 | + 3. Multiplique num_two e num_one e atribua o valor a um produto variável |
| 287 | + 4. Divida num_one por num_two e atribua o valor a uma divisão variável |
| 288 | + 5. Use a divisão de módulo para encontrar num_dois dividido por num_um e atribua o valor a uma variável restante |
| 289 | + 6. Calcule num_one elevado a num_two e atribua o valor a uma variável exp |
| 290 | + 7. Encontre a divisão mínima de num_one por num_two e atribua o valor a uma variável floor_division |
| 291 | +2. O raio de um círculo é de 30 metros. |
| 292 | + 1. Calcule a área de um círculo e atribua o valor a um nome de variável de _area_of_circle_ |
| 293 | + 2. Calcule a circunferência de um círculo e atribua o valor a um nome de variável _circum_of_circle_ |
| 294 | + 3. Pegue o raio como entrada do usuário e calcule a área. |
| 295 | +1. Use a função de entrada integrada para obter nome, sobrenome, país e idade de um usuário e armazenar o valor em seus nomes de variáveis correspondentes |
| 296 | +1. Execute help('keywords') no Python shell ou em seu arquivo para verificar as palavras ou palavras-chave reservadas do Python |
| 297 | + |
| 298 | +🎉 PARABÉNS ! 🎉 |
| 299 | + |
| 300 | +[<< Day 1](../README.md) | [Day 3 >>](../03_Day_Operators/03_operators.md) |
0 commit comments