• Nenhum resultado encontrado

MCG126 Programação de Computadores II

N/A
N/A
Protected

Academic year: 2021

Share "MCG126 Programação de Computadores II"

Copied!
29
0
0

Texto

(1)

MCG126 – Programação de Computadores II

Prof. Isac Mendes Lacerda

(Material original cedido gentilmente pela professora Janaína Gomide)

(2)

Data e hora

(3)

Data e Hora

Trabalhar com Data e Hora em qualquer linguagem de programação é um tema complexo:

problemas associados a fusos horários calendários não gregorianos

Vamos abordar Data e Hora de uma forma mais prática e mais simples

Aprender as necessidades básicas de manipulação das mesmas:

Descobrir a data corrente Somar datas

Calcular datas para frente ou para trás

Verificar dias de semana para determinadas datas Formatar datas, etc.

(4)

Data e Hora

Python oferece suporte para manipulação de Data e Hora através de bibliotecas nativas: calendar, datetime, time

É necessário fazer o import das bibliotecas

(5)

Biblioteca calendar

Biblioteca calendar

calendario é uma string calendar é um módulo!

(6)

Classe calendar - Métodos

setfirstweekday() – configura o primeiro dia da semana para começar cada semana. Observe o exemplo:

O padrão é mostrar a segunda-feira primeiro!

(7)

Classe calendar - Métodos

setfirstweekday() – configura o primeiro dia da semana para começar cada semana. Observe o exemplo:

Definindo o domingo como o início!

(8)

Classe calendar - Métodos

monthcalendar() – retorna uma matriz para representar o calendário do mês. Cada linha da matriz representa uma semana, os dias fora do mês são representados com 0s.

(9)

Biblioteca time - Métodos

Biblioteca time

- time() – retorna o instante de tempo em segundos como float

(10)

Biblioteca time - Métodos

Biblioteca time

- sleep(n) – suspende a execução do programa por n segundos.

(11)

Biblioteca datetime

Biblioteca datetime:

Possui inúmeras classes e propriedades para manipulação de data e hora. Principais Classes:

datetime: manipulação de data e hora

date: manipulação de data

time: manipulação de hora

timedelta: calculo de diferença entre datas, datas futuras, datas passadas, tempo futuro, tempo passado

timezone: manipulação de fuso horário

tzinfo: manipulação de fuso horário

É necessário fazer o import das classes desejadas

(12)

Classe datetime - Propriedades

Classe datetime:

Principais propriedades da classe datetime:

year: ano

month: mês

day: dia

hour: hora

minute: minuto

second: segundo

microsecond: microssegundo

(13)

Classe datetime - Métodos

today(): retorna o dia corrente num objeto datetime.

As propriedades (atributos) year, month, day, hour, minute, second, microsecond são inteiros

Podem ser obtidas diretamente através do

nomeDoObjeto.propriedade, exemplo: hoje.year, hoje.second.

(14)

Classe datetime - Métodos

(15)

Classe datetime - Métodos

datetime (year, month, day[, hour[, minute[, second[, microsecond[,tzinfo]]]]]): converte os parâmetros fornecidos em um objeto datetime. Os parâmetros devem respeitar as regras de conversão para data (mês entre 1 e 12, etc.), sendo year, month e day obrigatórios.

(16)

Classe datetime - Métodos

datetime (year, month, day[, hour[, minute[, second[, microsecond[,tzinfo]]]]]): converte os parâmetros fornecidos em um objeto datetime. Os parâmetros devem respeitar as regras de conversão para data (mês entre 1 e 12, etc.), sendo year, month e day obrigatórios.

(17)

Classe datetime - Métodos

ctime(): gera uma string no formato ctime.

>>> data.ctime()

'Wed Dec 25 12:40:00 2013‘

(18)

Classe datetime - Métodos

isoweekday(): retorna o número correspondente ao dia da semana, no padrão ISO:

1 – Segunda, 2 – terça, 3 – quarta, ..., 7 - domingo.

>>> data.isoweekday()

3

weekday(): retorna o número correspondente ao dia da semana:

0 – Segunda, 1 – terça, 2 – quarta, ..., 6 - domingo.

>>> data.weekday()

(19)

Classe datetime - Métodos

date(): retorna um objeto do tipo date. Considerando somente ano, mês e dia.

(20)

Classe datetime - Métodos

time(): retorna um objeto do tipo time. Considerando somente hora, minuto, segundo e microssegundo

(21)

Classe datetime - Métodos

strftime(): retorna uma string formatada de acordo com os parâmetros passados. Os parâmetros são passados via código conforme as tabelas seguintes:

21 Danilo Freitas

13:30:27

Cód. Significado

% a Dia da semana abreviado

% A Dia da semana extenso

% b Nome abreviado mês

% B Nome do mês extenso

% c Data e hora conforme configuração regional

% C Número do século (o ano dividido por 100, de 00 até 99).

% d Dia do mês (01 a 31)

% D Mesmo que %m /%d /%y

% e Dia do mês (1 a 31)

% g Como %G, mas sem o século.

% G Ano de 4 dígitos correspondente ao número da semana ISO (veja % V).

% h Mesmo que %b

% H Hora usando um relógio de 24 horas (00 a 23).

% I Hora usando um relógio de 12 horas (01 a 12).

% j Dia do ano (001 a 366)

(22)

Classe datetime - Métodos

Cód. Significado

% m Mês (01 a 12)

% M Minuto

% n Caractere de nova linha

% p AM ou PM de acordo com o valor da hora

% r Hora em notação da manhã e PM

% R Hora em notação de 24 horas

% S Segundo

% t Caractere de tabulação

% T Hora atual igual a %H:%M:%S

% u Dia da semana como um número (1 a 7), segunda = 1.

(23)

Classe datetime - Métodos

Cód. Significado

% V

Número da semana ISO 8601 do ano em curso (01 a 53), onde primeira semana é a primeira semana que tem pelo menos 4 dias no ano em curso, e com segunda feira como o primeiro dia da semana

% W Número da semana do ano em curso, a partir da primeira segunda feira como o primeiro dia da primeira semana.

% w Dia da semana como um decimal, domingo = 0.

% x Representação regional da data.

% X Representação regional da hora.

% y Ano, sem o século (de 00 a 99)

% Y Ano, incluindo o século

% Z Zona ou nome ou abreviação do tempo

% z Zona ou nome ou abreviação do tempo

%% Um caractere literal%

(24)

Classe datetime - Métodos

Dia da semana. Domingo = 0

Dia da semana por extenso.

(25)

Classe timedelta - Métodos

timedelta

(days=0, seconds=0, microseconds=0, milliseconds=0, min utes=0, hours=0, weeks=0): A classe timedelta trabalha com os parâmetros listados acima. Todos são opcionais e tem 0 (zero) como default.

Permite trabalhar com a diferença entre datas, calcular datas a frente, datas para trás.

(26)

Classe timedelta - Métodos

(27)

Classe timedelta - Métodos

(28)

Exercícios

Fazer um programa que leia o arquivo alunos.txt, que contém: nome, matrícula e data de nascimento (formato dd/mm/aa) os campos estão separados por um branco, e imprimir um relatório (arquivo) com o nome, matrícula, data de nascimento, idade e situação eleitoral (se o aluno tiver menos de 16 anos -> “Não votante”, entre 16 e 18 anos -> “Opcional”, acima de 18 anos -> “Votante”). O relatório (arquivo) deve ter data e hora de execução.

(29)

MCG126 – Programação de Computadores II

Prof. Isac Mendes Lacerda

Referências

Documentos relacionados

Os alunos que concluam com aproveitamento este curso, ficam habilitados com o 9.º ano de escolaridade e certificação profissional, podem prosseguir estudos em cursos vocacionais

Capítulo 7 – Novas contribuições para o conhecimento da composição química e atividade biológica de infusões, extratos e quassinóides obtidos de Picrolemma sprucei

Silva e Márquez Romero, no prelo), seleccionei apenas os contextos com datas provenientes de amostras recolhidas no interior de fossos (dado que frequentemente não há garantia

Novas Ações de Melhoria Necessidade de novos recursos Dados para o acompanhamento e revisão do SGQ Todos os processos Plano de Desenvolvimento Plano de Atividades Orçamento

O que acontece é que, por a estrutura lógica criada no ambiente de programação é processada pelo controlador lógico programável (NXT) em milisegundos, logo,

( ) Serviço de Orientação e Apoio Sociofamiliar, Plantão Social, Abordagem de Rua, Cuidado no Domicílio, Serviço de Habilitação e Reabilitação na comunidade das pessoas com

Não apresentarei o argumento neste trabalho, pois importa dizer sobre a solução ter vindo, então, ao deixar de lado as recomendações de escrita de roteiro que eu seguira

Na análise do jurídico e literário, na seara da propriedade intelectual, utilizando como objeto de estudo as obras de Machado de Assis, pode-se perceber a presença de