type('Harshit')
# output: str
- Armazenando valores em variáveis e funções de entrada e saída (
a = 5.67) - Typecasting – convertendo um tipo específico de variável / dados em outro tipo, se possível. Por exemplo, convertendo uma sequência de números inteiros em um número inteiro.
astring = "55"
print(type(astring))
# output:
astring = int(astring)
print(type(astring))
# output:
Mas se você tentar converter uma sequência alfanumérica ou alfabética em um número inteiro, isso gerará um erro:
Depois de se familiarizar com os tipos de dados básicos e seu uso, aprenda sobre operadores aritméticos e avaliações de expressão (DMAS) e como você pode armazenar o resultado em uma variável para uso posterior.
answer = 43 + 56 / 14 - 9 * 2
print(answer)
# output: 29.0
Cordas:
Saber como lidar com dados textuais e seus operadores é útil ao lidar com o tipo de dados string. Pratique estes conceitos:
- Concatenando cadeias usando
+ - Dividindo e unindo a string usando o
split()ejoin()método - Alterando o caso da string usando
lower()eupper()métodos - Trabalhando com substrings de uma string
Aqui está o caderno que abrange todos os pontos discutidos.
2. Estruturas de dados compostas (listas, tuplas e dicionários)
Listas e tuplas (tipos de dados compostos):
Uma das estruturas de dados mais usadas e importantes em Python são as listas. Uma lista é uma coleção de elementos e pode ser do mesmo tipo ou de vários tipos de dados. As listas de entendimento acabarão pavimentando o caminho para o cálculo de equações algébricas e modelos estatísticos em sua matriz de dados.
Aqui estão os conceitos com os quais você deve se familiarizar:
- Como vários tipos de dados podem ser armazenados em uma lista Python.
- Indexação e fatiamento para acessar um elemento ou sub-lista específica da lista.
- Métodos auxiliares para classificação, reversão, exclusão de elementos, cópia e anexação.
- Listas aninhadas – listas que contêm listas. Por exemplo,
[1,2,3, [10,11]]. - Adição em uma lista.
alist + alist
# output: ['harshit', 2, 5.5, 10, [1, 2, 3], 'harshit', 2, 5.5, 10, [1, 2, 3]]Multiplicando a lista por um escalar:
alist * 2
# output: ['harshit', 2, 5.5, 10, [1, 2, 3], 'harshit', 2, 5.5, 10, [1, 2, 3]]Tuplas são uma sequência ordenada imutável de itens. Eles são semelhantes às listas, mas o A principal diferença é que tuplas são imutáveis, enquanto as listas são mutáveis.
Conceitos para focar:
- Indexação e fatiamento (semelhante às listas).
- Tuplas aninhadas.
- Adicionando tuplas e métodos auxiliares como
count()eindex().
Dicionários
Esse é outro tipo de coleção em Python. Enquanto as listas são indexadas por número inteiro, os dicionários são mais parecidos com endereços. Os dicionários possuem pares de valores-chave e as chaves são análogas aos índices nas listas.
Para acessar um elemento, você precisa passar a chave entre colchetes.
Conceitos para focar:
- Iterando através de um dicionário (também coberto por loops).
- Usando métodos auxiliares como
get(),pop(),items(),keys(),update(), e assim por diante.
O notebook para os tópicos acima pode ser encontrado aqui.
3. Condicionais, Loops e Funções
Condições e ramificação
O Python usa essas variáveis booleanas para avaliar condições. Sempre que houver uma comparação ou avaliação, os valores booleanos são a solução resultante.
x = True
ptint(type(x))
# output: print(1 == 2)
# output: FalseA comparação na imagem precisa ser observada com cuidado, pois as pessoas confundem o operador de atribuição (=) com o operador de comparação (==)
Operadores booleanos (ou, e não)
Eles são usados para avaliar afirmações complexas juntas.
or– Uma das muitas comparações deve ser verdadeira para que toda a condição seja verdadeira.and– Todas as comparações devem ser verdadeiras para que toda a condição seja verdadeira.not– Verifica o oposto da comparação especificada.
score = 76
percentile = 83
if score > 75 or percentile > 90:
print("Admission successful!")
else:
print("Try again next year")
# output: Try again next year
Conceitos a aprender:
if,elseeelifinstruções para construir sua condição.- Fazendo comparações complexas em uma condição.
- Mantendo o recuo em mente ao escrever aninhado
if/elseafirmações. - Usando booleano,
in,isenotoperadores.
rotações
Frequentemente, você precisará executar uma tarefa repetitiva, e os loops serão seu melhor amigo para eliminar a sobrecarga da redundância de código. Você muitas vezes precisará percorrer cada elemento de uma lista ou dicionário, e os loops são úteis para isso. while e for são dois tipos de loops.
Focar em:
- o
range()e iterando através de uma sequência usandoforrotações. whilerotações
age = [12,43,45,10]
i = 0
while i < len(age):
if age[i] >= 18:
print("Adult")
else:
print("Juvenile")
i += 1
# output:
# Juvenile
# Adult
# Adult
# Juvenile
- Iterando através de listas e anexando (ou qualquer outra tarefa com itens de lista) elementos em uma ordem específica
cubes = []
for i in range(1,10):
cubes.append(i ** 3)
print(cubes)
#output: [1, 8, 27, 64, 125, 216, 343, 512, 729]
- Usando
break,passecontinuepalavras-chave.
Compreensão da lista
Uma maneira sofisticada e sucinta de criar uma lista usando e iterável, seguida por um for cláusula.
Por exemplo, você pode criar uma lista de 9 cubos, como mostrado no exemplo acima, usando a compreensão da lista.
# list comprehension
cubes = [n** 3 for n in range(1,10)]
print(cubes)
# output: [1, 8, 27, 64, 125, 216, 343, 512, 729]Funções
Enquanto trabalhava em um grande projeto, manter o código se torna uma tarefa real. Se o seu código executar tarefas semelhantes muitas vezes, uma maneira conveniente de gerenciar seu código é usando funções.
Uma função é um bloco de código que executa algumas operações nos dados de entrada e fornece a saída desejada.
O uso de funções torna o código mais legível, reduz a redundância, torna o código reutilizável e economiza tempo.
Python usa indentação para criar blocos de código. Este é um exemplo de uma função:
def add_two_numbers(a, b):
sum = a + b
return sum
Definimos uma função usando o def palavra-chave seguida pelo nome da função e argumentos (entrada) entre parênteses, seguidos por dois pontos.
O corpo da função é o bloco de código recuado e a saída é retornada com o return palavra-chave
Você chama uma função especificando o nome e passando os argumentos entre parênteses, conforme a definição.
Mais exemplos e detalhes aqui.
4. Programação Orientada a Objetos e Utilizando Bibliotecas Externas
Temos usado os métodos auxiliares para listas, dicionários e outros tipos de dados, mas de onde eles vêm?
Quando dizemos lista ou ditado, estamos realmente interagindo com um objeto de classe de lista ou um objeto de classe de ditado. Imprimir o tipo de objeto de dicionário mostrará que é um objeto de classe dict.
Todas essas são classes predefinidas na linguagem Python e tornam nossas tarefas muito fáceis e convenientes.
Objetos são instância de uma classe e são definidos como um encapsulamento de variáveis (dados) e funções em uma única entidade. Eles têm acesso às variáveis (atributos) e métodos (funções) das classes.
Agora, a pergunta é: podemos criar nossas próprias classes e objetos personalizados? A resposta é sim.
Aqui está como você define uma classe e um objeto dela:
class Rectangle:
def __init__(self, height, width):
self.height = height
self.width = width
def area(self):
area = self.height * self.width
return area
rect1 = Rectangle(12, 10)
print(type(rect1))
# output:
Você pode acessar os atributos e métodos usando o operador ponto (.).
Usando bibliotecas / módulos externos
Um dos principais motivos para usar o Python para ciência de dados é a incrível comunidade que desenvolve pacotes de alta qualidade para diferentes domínios e problemas. O uso de bibliotecas e módulos externos é parte integrante do trabalho em projetos em Python.
Essas bibliotecas e módulos definiram classes, atributos e métodos que podemos usar para realizar nossas tarefas. Por exemplo, o math A biblioteca contém muitas funções matemáticas que podemos usar para realizar nossos cálculos. As bibliotecas são .py arquivos.
Você deve aprender a:
- Importar bibliotecas no seu espaço de trabalho
- Usando o
helppara aprender sobre uma biblioteca ou função
- Importando a função necessária diretamente.
- Como ler a documentação dos pacotes conhecidos, como pandas, numpy e sklearn, e usá-los em seus projetos
Isso deve abranger os fundamentos do Python e começar com a ciência de dados.
Existem alguns outros recursos, funcionalidades e tipos de dados com os quais você se familiarizará com o tempo, à medida que trabalha em mais e mais projetos.
Você pode passar por esses conceitos no repositório GitHub, onde encontrará o exercício cadernos também:
dswh / python_fundamentals
Os fundamentos do Python são uma série de tutoriais sobre o conhecimento básico do Python, necessários para iniciar no campo da ciência de dados. – dswh / python_fundamentals
Aqui está uma série de vídeos em três partes com base nesta postagem para você acompanhar:
Ciência de Dados com Harshit
Você pode se conectar comigo no LinkedIn, Twitter, Instagrame confira meu Canal do Youtube para tutoriais e entrevistas mais detalhados.