Upload
others
View
3
Download
0
Embed Size (px)
Citation preview
Programaçãobásica
1. Variáveiseatribuições
2. Tiposdevariáveis
3. InstruçõesdeInputeOutput
4. Aritmética
5. Funções,pacotesemódulos
6. Funçõespadrão
7. Comentários
Programaçãobásica
1. Variáveiseatribuições
2. Tiposdevariáveis
3. InstruçõesdeInputeOutput
4. Aritmética
5. Funções,pacotesemódulos
6. Funçõespadrão
7. Comentários
Variáveiseatribuições
x = 1
Instruçãodeatribuição
Variávelcomnomex Valoratribuído
Variáveiseatribuições
NomesdevariáveisemPython:
• Podemconterletras,númeroseo“underscore"• Comprimentoarbitrário• Letrasminúsculasemaiúsculassãodiferentes:• Nãopodemconterespaçosououtrossímbolos• Nãopodeminiciarcomnúmeros
x, X
Physics_101
4Score&7Years
Variáveiseatribuições
NomesdevariáveisemPython:
• Podemconterletras,númeroseo“underscore"• Comprimentoarbitrário• Letrasminúsculasemaiúsculassãodiferentes:• Nãopodemconterespaçosououtrossímbolos• Nãopodeminiciarcomnúmeros
x, X
Physics_101
4Score&7Years
Programaçãobásica
1. Variáveiseatribuições
2. Tiposdevariáveis
3. InstruçõesdeInputeOutput
4. Aritmética
5. Funções,pacotesemódulos
6. Funçõespadrão
7. Comentários
Tiposdevariáveis
• Integer 1, 0, -286784
• Float
• Complex
3.14159, -6.63x10-34, 1.0
1 + 2j, -3.5 - 0.4j
Unidadeimagináriaéchamadadej Semespaço
Tiposdevariáveis
• Integer 1, 0, -286784
• Float
• Complex
3.14159, -6.63x10-34, 1.0
1 + 2j, -3.5 - 0.4j
Unidadeimagináriaéchamadadej Semespaço
1+2*j ?
ComodeXinirotipodeumavariável?
•Atravésdeinstruçãodeatribuição:
x = 1
x = 1.5
Inteiro
Float
•Tipodevariávelédinâmico(DiferentedeC,Fortran)
•Nãoérecomendávelmudartipoaolongodaexecução
•NãoexisteinstruçãodedeclaraçãoemPython
ComodeXinirotipodeumavariável?
•Atribuir“inteiro"avariáveldotipo“Xloat"?
x = 1.0
x = float(1)
•Atribuir“Xloat"avariáveldotipo“complex”?
x = 1.5 + 0j
x = complex(1.5)
Tiposdevariáveis
• Integer 1, 0, -286784
• Float
• Complex
3.14159, -6.63x10-34, 1.0
1 + 2j, -3.5 - 0.4j
• String “This is a string”
AspasnoinícioeXim
Programaçãobásica
1. Variáveiseatribuições
2. Tiposdevariáveis
3. InstruçõesdeInputeOutput
4. Aritmética
5. Funções,pacotesemódulos
6. Funçõespadrão
7. Comentários
InstruçõesdeInputeOutput
x = 1 print(x)
Criavariáveldotipointeiroeatribuivalor1
Imprimevalordavariávelx natela
1
Resultado:
InstruçõesdeInputeOutput
x = 1 print(x) x = 2 print(x)
Comandoprintimprimevaloratualdavariável:
1 2
Resultado:
InstruçõesdeInputeOutput
x = 1 print(x) x = 2 print(x)
Cadacomandoprintimprimenumalinhanova
1 2
Resultado:
InstruçõesdeInputeOutput
x = 1 y = 2 print(x,y)
Imprimirnamesmalinha:
1 2
Resultado:
InstruçõesdeInputeOutput
x = 1 y = 2 print(“The value of x is”,x,”and the value of y is”,y)
Podemosincluirtextotambém:
The value of x is 1 and the values of y is 2
Resultado:
InstruçõesdeInputeOutput
x = 1.5 z = 2 + 3j print(x,z)
EvidentementepodemosimprimirvariáveisdotipoXloatecomplextambém:
1.5 (2+3j)
Resultado:
InstruçõesdeInputeOutput
x = input(“Enter the value of x: “)
Instruçõesdeinputsãosemelhantes:
InstruçõesdeInputeOutput
Resultadodainstruçãoinput():
1.Imprimenatelaoqueestiverentreosparênteses
Enter the value of x:
2.Esperaratédigitarumvalornoteclado
Enter the value of x: 1.5
InstruçõesdeInputeOutput
x = input(“Enter the value of x: “) print(“The value of x is”,x)
Resultado:
Enter the value of x: 1.5
The value of x is: 1.5
Qualéotipodavariávelx??
InstruçõesdeInputeOutput
x = input(“Enter the value of x: “) print(“The value of x is”,x)
Resultado:
Enter the value of x: 1.5
The value of x is: 1.5
Qualéotipodavariávelx??
Nainstruçãoinput() ésempreinterpretadacomostring
InstruçõesdeInputeOutput
Comofazerparaproduzirnúmeros(integer,Xloat,…)?
temp = input(“Enter the value of x: “) x = float(temp) print(“The value of x is”,x)
InstruçõesdeInputeOutput
Comofazerparaproduzirnúmeros(integer,Xloat,…)?
temp = input(“Enter the value of x: “) x = float(temp) print(“The value of x is”,x)
x = complex(temp) x = int(temp)
InstruçõesdeInputeOutput
Comofazerparaproduzirnúmeros(integer,Xloat,…)?
temp = input(“Enter the value of x: “) x = float(temp) print(“The value of x is”,x)
Resultado:
Enter the value of x: 1.5
The value of x is: 1.5
InstruçõesdeInputeOutput
Mascuidado:
temp = input(“Enter the value of x: “) x = float(temp) print(“The value of x is”,x)
Resultado:
Enter the value of x: Hello
ValueError: could not convert string to float: 'Hello'
Programaçãobásica
1. Variáveiseatribuições
2. Tiposdevariáveis
3. InstruçõesdeInputeOutput
4. Aritmética
5. Funções,pacotesemódulos
6. Funçõespadrão
7. Comentários
Aritmética
Operaçõesmatemáticasbásicas:
x + y x - y x * y x / y x ** y
AdiçãoSubtraçãoMultiplicaçãoDivisãoElevaçãodexàpotênciay
Aritmética
Outrasoperaçõesmatemáticas:
x // y Divisãodeinteiros:arredondamentoparabaixoparaointeiromaispróximo
14 // 3
-14 // 3
Aritmética
Outrasoperaçõesmatemáticas:
x // y Divisãodeinteiros:arredondamentoparabaixoparaointeiromaispróximo
14 // 3 4
-14 // 3 -5
Aritmética
Outrasoperaçõesmatemáticas:
x % y Módulo:restoapósdivisãodeinteiros
14 % 3
-14 % 3
Aritmética
Outrasoperaçõesmatemáticas:
x % y Módulo:restoapósdivisãodeinteiros
14 % 3
-14 % 3
2
1
Aritmética
MódulotambémfuncionaparaXloats:
1.5 % 0.4
Aritmética
MódulotambémfuncionaparaXloats:
1.5 % 0.4 0.3
Aritmética
Regrasparaotipodavariávelresultado:
x = a + b
a, b inteiros xinteiro(idemparaXloatecomplex)
a, b detiposdiferentes xdotipomaisgeralentreaeb
Aritmética
Regrasparaotipodavariávelresultado:
a, b detiposdiferentes xdotipomaisgeraldeaeb
integer+Xloat Xloat
complex+Xloat complex
Regrasiguaisparasubtração,multiplicação,divisãodeinteiroemódulo
Aritmética
Exceção:Divisão/
Resultadoésemprefloatoucomplex, nunca integer
4 / 2 2.0
2 / (1+1j) (1-1j)
Aritmética
Combinaçõesdeoperaçõesmatemáticasseguemregrasnormaisdeprecedência
x+2*y
x-y/2
3*x**2
x/2*y
x+ 2y
x� 12y
3x2
12xy
Aritmética
Combinaçõesdeoperaçõesmatemáticasseguemregrasnormaisdeprecedência
x+2*y
x-y/2
3*x**2
x/2*y
x+ 2y
x� 12y
3x2
12xy
Usodeparênteses()tambémsegueregrasusuais.
Aritmética
Instruçõesdeatribuiçãoválidas:
x = a + b/c
x = (a + b)/c
x = a + 2*b - 0.5*(1.618**c + 2/7)
x = x**2 -2
Aritmética
Instruçõesdeatribuiçãoválidas:
x = a + b/c
x = (a + b)/c
x = a + 2*b - 0.5*(1.618**c + 2/7)
Usodeespaçosmelhoraleitura
x = x**2 -2
Aritmética
Instruçõesdeatribuiçãoválidas:
x = a + b/c
x = (a + b)/c
x = a + 2*b - 0.5*(1.618**c + 2/7)
Instruçãodeatribuiçãonão-válida:
2*x = y
Usodeespaçosmelhoraleitura
SyntaxError: can't assign to operator
x = x**2 -2
Aritmética
InstruçõesdeatribuiçãocommodiXicadores:
x += 1
x -= 4
x *= -2.6
x /= 5*y
x //= 3.4
x = x + 1
x = x - 4
x = -2.6*x
x = x/(5*y)
x = x//3.4
Aritmética
Atribuiçãodeváriasvariáveisemúnicainstrução
x,y = 1,2.5x = 1 y = 2.5
x,y = 2*z+1,(x+y)/4 x = 2*z+1
x = (x+y)/4 ?
Aritmética
Atribuiçãodeváriasvariáveisemúnicainstrução
x,y = 1,2.5x = 1 y = 2.5
x,y = 2*z+1,(x+y)/4 x = 2*z+1
x = (x+y)/4
Primeirosãoavaliadososladosdireito.
Depoissãoatribuídosàsvariáveisdoladoesquerdo
Aritmética
Aplicaçãoútil:trocarvaloresde2variáveisxey:
x,y = y,x
Exemplo1:Quedalivredebola
Bolacaidetorredealturah
Programa:1) Lervalordehemmetros2) Lerintervalodetempot emsegundos3) Calcularalturadabolaemrelaçãoaochão
apósintervalot, ignorandoresistênciadoar
Exemplo1:Quedalivredebola
Bolacaidetorredealturah
Exemplo1:Quedalivredebola
Bolacaidetorredealturah
Bolacaidetorredealturah
Exemplo1:Quedalivredebola
Programaçãobásica
1. Variáveiseatribuições
2. Tiposdevariáveis
3. InstruçõesdeInputeOutput
4. Aritmética
5. Funções,pacotesemódulos
6. Funçõespadrão
7. Comentários
Funções,pacotesemódulos
Operaçõesmaiscomplicadasorganizadasempacotes
Énecessáriocarregarpacotesantesdeusar
Funções,pacotesemódulos
Énecessáriocarregarpacotesantesdeusar
Pacotecomfunçõesmatemáticaspadrão:math
Funções,pacotesemódulos
Pacotemath:
log log10 exp sin, cos, tan asin, acos, atan sing, cosh, tanh sqrt
Argumentosdasfunçõestrigonométricasemradianos
Funções,pacotesemódulos
Pacotemath:
erf gamma
e pi
Alémdefunçõestambémcontémconstantes
Podemosimportarváriasfunçõesnumaúnicainstrução:
Podemosimportartodooconteúdodopacotemath:
Funções,pacotesemódulos
Podedarproblemas
Algunspacotesgrandessãodivididasemmódulos
Umexemploéopacotenumpy,quecontémmuitasfacilidadesmatemáticasincluindorotinasdeálgebralinear,transformadadeFouriereoutras.
Funções,pacotesemódulos
módulonumpy.linalg
módulonumpy.fft
Importandofunçãodomódulodeálgebralinear:
Funções,pacotesemódulos
from numpy.linalg import inv
Funçãoinv inverteumamatriz
Exemplo2:Conversãodecoordenadaspolares
Dadascoordenadasdeumpontoemcoordenadaspolares,,determinarcoordenadasCartesianascorrespondentes
Programa:1) Lervalores2) Fazerconversão:3) Escreverresultadosparaatela
r, ✓x, y
r, ✓x = r cos ✓, y = r sin ✓
Exemplo2:Conversãodecoordenadaspolares
Exemplo2:Conversãodecoordenadaspolares
Programaçãobásica
1. Variáveiseatribuições
2. Tiposdevariáveis
3. InstruçõesdeInputeOutput
4. Aritmética
5. Funções,pacotesemódulos
6. Funçõespadrão
7. Comentários
Funçõespadrão
Existeumnúmeropequenodefunçõespadrãoquenãopertencemanenhumpacote/móduloequeestãosempredisponíveis:
float() int() complex() input() print()
Programaçãobásica
1. Variáveiseatribuições
2. Tiposdevariáveis
3. InstruçõesdeInputeOutput
4. Aritmética
5. Funções,pacotesemódulos
6. Funçõespadrão
7. Comentários
ComentáriosQualquerlinhadecódigoqueiniciacom#éignoradoeservecomocomentário
Comentáriossãomuitoimportantes!
ComentáriosOsímbolo#nãoprecisasercolocadonoiníciodalinha:
Tudoqueapareceapóso#servecomocomentário