Python para enfermeiras (12)¶
ainda sobre módulos¶
In [11]:
import datetime
In [12]:
agora = datetime.datetime.now()
In [13]:
agora
Out[13]:
datetime.datetime(2021, 2, 2, 10, 15, 21, 676027)
In [14]:
# para calcular tempo de internação, por exemplo
# data inicial
d1 = datetime.date(2015, 4, 28)
print ('d1:', d1)
d1: 2015-04-28
In [15]:
# data final
d2 = d1.replace(year=2016)
print ('d2:', d2)
d2: 2016-04-28
In [16]:
# diferença em dias das datas
d2 - d1
Out[16]:
datetime.timedelta(days=366)
mais funções em python¶
In [54]:
# Função atividade de enfermagem recebe um escore NAS como parâmetro e retorna a quantidade de trabalho
x = escore_NAS / 100
escore_NAS = [89, 74, 94, 165]
def ativ_enf(x):
return (escore_NAS / 100)
list(ativ_enf)
print(list(ativ_enf))
--------------------------------------------------------------------------- TypeError Traceback (most recent call last) <ipython-input-54-601a8f30c09d> in <module> 1 # Função atividade de enfermagem recebe um escore NAS como parâmetro e retorna a quantidade de trabalho ----> 2 x = escore_NAS / 100 3 escore_NAS = [89, 74, 94, 165] 4 def ativ_enf(x): 5 return (escore_NAS / 100) TypeError: unsupported operand type(s) for /: 'list' and 'int'
In [4]:
# Criando uma lista do Nursing Activities Score (NAS) de pacientes
escore_NAS = [89, 74, 94, 165]
# criando a função
def ativ_enf(escore_NAS):
return(escore_NAS // 100)
In [52]:
'''Aplicar a função meu_NAS a cada elemento da lista de escores de pacientes e
verificar nua nova lista quanto de enfermagem é necessário para cada paciente. '''
map(ativ_enf, escore_NAS)
Out[52]:
<map at 0x19f241c6d00>
In [6]:
# Função map() retornando a lista de atividades de enfermagem (como números inteiros)
list(map(ativ_enf, escore_NAS))
Out[6]:
[0, 0, 0, 1]
In [15]:
type([0, 0, 0, 1])
Out[15]:
list
erros e exceções¶
In [33]:
# vamos criar uma função pensando no cálculo da dosagem de medicamentos
# Uma colher de sopa equivale a 5ml, o paciente deve tomar 10 ml do medicamento. Quantas colheres de sopa?
def numDiv (num1, num2):
colher = (num1 / num2) * 10 #(1:5 * dose prescrita é 10)
print(colher)
In [34]:
numDiv(1,5)
2.0
In [35]:
numDiv(1,0)
--------------------------------------------------------------------------- ZeroDivisionError Traceback (most recent call last) <ipython-input-35-4de185eea8f5> in <module> ----> 1 numDiv(1,0) <ipython-input-33-f17c4b3b0ed4> in numDiv(num1, num2) 4 5 def numDiv (num1, num2): ----> 6 colher = (num1 / num2) * 10 7 print(colher) ZeroDivisionError: division by zero
In [36]:
# Utilizando try e except
try:
8 + 'Risco de Dignidade Humana Prejudicada'
except TypeError:
print("Operação não permitida")
Operação não permitida
In [37]:
# dando informações para corrigir o procedimento
def askint():
try:
idade = int(input("Digite sua idade: "))
except:
print ("Você não digitou a idade!")
idade = int(input("Tente novamente. Digite a idade número: "))
finally:
print ("Obrigado!")
print (idade)
In [38]:
askint()
Digite sua idade: 61 Obrigado! 61
In [39]:
askint()
Digite sua idade: XX Você não digitou a idade! Tente novamente. Digite a idade número: 61 Obrigado! 61
Apontamentos
- Não há apontamentos.
BNN - ISSN 1676-4893
Boletim do Núcleo de Estudos e Pesquisas sobre as Atividades de Enfermagem (NEPAE)e do Núcleo de Estudos sobre Saúde e Etnia Negra (NESEN).