Tipos são classificações de dados que em Python são objetos. Dessa forma um objeto de determinado tipo possui as propriedades (métodos/funções e atributos) específicos do tipo. Podemos descobrir o tipo de cada objeto usando o comando:
type(objeto)
Em Python (3.x) os tipos numéricos são divididos em três classes: os inteiros (int), os pontos flutuantes (float) e os complexos (complex).
a = 12
type(a)
b = 2.7
type(b)
b.is_integer()
c = 3 + 1j
type(c)
c.conjugate()
print(9 + 8) # Soma.
print(12 - 34) # Subtração.
print(12 * 3) # Multiplicação.
print(34 / 23) # Divisão.
print(3 ** 5) # Exponenciação.
print(9 ** 0.5) # Radiciação.
print(501 % 10) # resto da divisão
a = 23.
print(type(a))
b = 2 + 3j
print(type(b))
c = a + b
print(type(c))
c = 2.5
d = 4
c > d
c = 2.5
d = 4
c <= d
c = 1 + 3j
d = 2 + 4j
c > d
c == d
d != c
Listas são sequências ordenadas de itens (não necessariamente do mesmo tipo) que são postos entre colchetes e separados por vírgula. Uma característica que faz com que as listas sejam tão utilizadas é a mutabilidade, isto é, seus elementos podem ser alterados.
lista = [1,2,2, [2,3,4], 3.9, 4, 2.8,'uma string']
lista
obs.: O primeiro elemento possui índice 0.
lista[3]
lista[3][2]
lista[-1]
seu_novo_nome = [2,6,3,8]
seu_novo_nome.append(23)
seu_novo_nome
seu_novo_nome.pop()
seu_novo_nome
seu_novo_nome
seu_novo_nome.append(4)
seu_novo_nome.extend([0,7,3])
seu_novo_nome
seu_novo_nome.append([9,9])
seu_novo_nome.insert(2,5678)
seu_novo_nome
seu_novo_nome.pop()
seu_novo_nome.sort() #Colocando em ordem
seu_novo_nome
nova2 = [[[2,1],7,9,3,3,2,[2,6]],4,5,7]
nova2[0]
nova2[0].index(2)
len(nova2) #len() serve para dar o tamanho do objeto
nova2[0].count(3)
nova2[0][3]
nova2.index(4)
nova2.reverse()
print(nova2)
nova_lista = [1,2,3,4,5,6]
nova_lista[2]
nova_lista[2:5]
nova_lista[-2]
Strings são sequências de caracteres dispostos, necessariamente, entre aspas simples ou duplas.
s1 = 'uma string'
s2 = "outra string"
print(s1)
s1
s2
s3 = "let's go to the classroom"
s3
s4 = "nesta string eu tenho aspas simples (') e aspas duplas(\")"
s4
print(s4)
s5 = 'let\'s stress'
s5
s1+s2
s1+' '+s2
print('um comando' + ' ' + 'que ocupe' + ' ' + 'duas ou mais linhas')
s6 = 'RIO - Brasília fechou 2015 com uma inflação de 11,95%, segundo o Índice de Preços \
ao Consumidor Semanal (IPC-S), medido pela Fundação Getulio Vargas (FGV). Entre as sete \
capitais pesquisadas pela FGV, a capital federal foi a que teve a maior alta de preços. \
Em 2014, Brasília havia registrado uma taxa de inflação de 6,74%.'
s6
print(s6)
s7 = '''
RIO - Brasília fechou 2015 com uma inflação de 11,95%,
segundo o Índice de Preços ao Consumidor Semanal (IPC-S),
medido pela Fundação Getulio Vargas (FGV).
Entre as sete capitais pesquisadas pela FGV, a capital federal foi
a que teve a maior alta de preços. Em 2014, Brasília havia registrado
uma taxa de inflação de 6,74%.
'''
s7
print(s7)
texto = 'uma linha \noutra linha'
print(texto)
s4
s4.count('a')
s4 = s4.replace('a','@')
s4
s4.find('simples')
s4[6]
s4[28:]
s4[s4.find('string'):s4.find('simples')+len('simples')]
s4[6:35]
inicio = s4.find('string')
fim = s4.find('simples')+len('simples')
s4[inicio:fim]
a = 12
b = int('12')
a + b
c = str(12)
d = '12'
c + d
c.isdigit()
x = 0xFFF
x
y = 0b111110001
y
z = 0o777321
z
0b11111111
Serve para criação de estruturas lógicas e criação de condicionais retornando somente True ou False.
'RENATO'.isupper()
b1 = True
b2 = False
b1 == b2
2 == 5
type(2 == 7)
4 != 5
if (9 > 10) and (2 == (1 + 1)) and (7 <= 8):
print('Correto')
if x == 4095:
print('Legal')
else:
print('chato')
print('novo bloco')
Set são sequências nãoordenada de itens únicos. Os itens são postos entre chaves e separados por vírgula.
c1 = {1,2,3,3,3,3,3,4}
c1
c2 = set([1,2,3,4,1,2])
c2
lista3 = [1,2,3,'string']
conjunto = set(lista3)
conjunto
conjunto2 = conjunto.union([9,8,7])
conjunto2
conjunto.intersection(conjunto2)
lista3 = list(conjunto)
conjunto4 = set('uma string legal')
conjunto4
print(len('uma string legal'))
print(len(set('uma string legal')))
texto = '''
There are two candidates for the TIOBE programming language of the year award that will be announced around the 1st of January 2015. These are statistical language R (+1.38%) and Apple's new Swift language (+1.06%). Apart from these, also JavaScript and Dart have a chance to win. The award is given to the language with the highest increase in ratings in 2014. Visual Basic has the highest delta but it doesn't qualify for the award because it has been introduced as a split off of the general Basic entry.
'''
texto
#texto = texto.replace('a','&&&&a')
lista_palavras = texto.split()
lista_palavras
palavras_unicas = set(lista_palavras)
print(len(lista_palavras))
print(len(palavras_unicas))
' @ '.join(lista_palavras)
import string
string.punctuation
for punct in ['.','?','!']:
texto = texto.replace(punct, '*****')
texto
texto.split('*****')
string5 = 'uma string'
string5 += ' outro texto'
string5
Dicionários são sequências não ordenadas de itens na forma de pares key:values que se encontram dentro de chaves e separados por vírgula. Como value podemos usar objetos de qualquer tipo, já como key só podemos usar objetos de tipos imutáveis (strings, números ou tuplas).
dic = {'chave1':[1,2,3],'chave2':2,'outra chave':4,45:26, 'outro':23}
dic
dic.update({2:3})
dic
ficha = {'Peso':73, 'Altura':183, 'Idade':44, 'Nome':'Renato'}
ficha
ficha['Idade']
Exercício:
Criar uma estrutura de dados para representar as notas de 3 avaliações (A1, A2 e AS) em três
disciplinas (Matemática, História e Geografia)
boletim = {'Matemática':{'A1':9.0, 'A2':8.0,'AS':4.0},
'História':{'A1':9.0, 'A2':8.0,'AS':4.0},
'Geografia':{'A1':9.0, 'A2':8.0,'AS':4.0}}
boletim
boletim['Matemática']['A2']
boletim.items()
'A2' in boletim['Matemática']
boletim['Matemática'].values()
boletim['Matemática']['AS'] = 10
boletim
newdic = {}
newdic
newdic['elemento1'] = 23
newdic
newdic.update({'um':2})
newdic
newdic['um'] = 1
newdic
d2 = {}
d1 = {1:d2}
d2 = {2:d1}
d1
d2
d2[2][1] = 'outra coisa'
d1[2]='outro elemento'
d2
Tuplas, assim como listas, são sequências ordenadas de itens. As diferenças entre elas são: os elementos estão entre parênteses e as tuplas são imutáveis, seus elementos não podem ser modificados.
t = (1,2,3,4,7,4,3,1,'string',{1,2}, [1,2])
type(t)
t[0]
t[5]
t[3:6]
lista = [1,2,3]
tupla = tuple(lista)
tupla
lista2 = list(tupla)
lista2
d5 = {(1,2):'tupla'}
d5
t2 = (2,4,7,2,2,2,2)
t2.count(2)
a = [1,2]
t = (a,a,a,a,a)
l = [a,a,a,a,a]
import string
import random
import math
import numpy
string.punctuation
random.random()
math.pi
numpy.pi
from math import *
pi
e = [1,2,3]
from math import *
e
from numpy import mean, pi
mean([1,2,3,4,5,6,7,8,9])
pi
math.pi == numpy.pi
import pandas as pd
import numpy as np
import matplotlib.pyplot as plt
plt.plot([1,2,3,4,5,6,4,3,2,1])
plt.show()
import this