Jump to content

Search the Community

Showing results for tags 'python'.



More search options

  • Search By Tags

    Type tags separated by commas.
  • Search By Author

Content Type


Forums

  • Bem-vindos ao Portugal-a-Programar
    • Sugestões, Críticas ou Dúvidas relativas ao P@P
    • Acerca do P@P
  • Comunidade a Trabalhar
    • Wiki P@P
    • Apresentação de Projectos de Programação
    • Downloads
  • Revista PROGRAMAR
    • Revista PROGRAMAR
  • Desenvolvimento Geral
    • C
    • C++
    • Java
    • Haskell
    • Pascal
    • Python
    • Bases de Dados
    • Dispositivos Móveis
    • Outras Linguagens
  • Desenvolvimento Orientado para Web
    • PHP
    • HTML
    • CSS
    • Javascript
    • Outras Linguagens de WebDevelopment
    • Desenvolvimento Web
  • Desenvolvimento .NET
    • C#
    • Visual Basic .NET
    • ASP.NET
    • WPF & SilverLight
  • Software e Sistemas Operativos
    • Software de Produtividade
    • Sistemas Operativos
    • Apresentação de Software
  • Informática
    • Interfaces Visuais
    • Computação Gráfica
    • Algoritmia e Lógica
    • Segurança e Redes
    • Hardware
    • Electrónica
    • Automação Industrial
    • Matemática
    • Dúvidas e Discussão de Programação
    • Notícias de Tecnologia
  • Outras Áreas
    • Dúvidas Gerais
    • Discussão Geral
    • Eventos
    • Anúncios de Emprego
    • Tutoriais
    • Snippets / Armazém de Código
  • Arquivo Morto
    • Projectos Descontinuados
    • System Empires

Blogs

  • Blog dos Moderadores
  • Eventos
  • Notícias de Tecnologia
  • Blog do Staff
  • Revista PROGRAMAR
  • Projectos
  • Wiki

Categories

  • Revista PROGRAMAR
  • Tutoriais
  • Textos Académicos
  • Exercícios Académicos
    • Exercícios c/ Solução
    • Exercícios s/ Solução
  • Bibliotecas e Aplicações
  • Outros

Find results in...

Find results that contain...


Date Created

  • Start

    End


Last Updated

  • Start

    End


Filter by number of...

Found 1,041 results

  1. Olá a todos! Minha pergunta é bem simples, é possivel fazer um programa em python que calcule a probabilidade de chover sabendo que choveu nos ultimos três dias?
  2. Gustavo Lofrese Carvalho

    Inverter Strings dois a dois

    Alguem poderia me explicar como eu posso inverter uma string, duas palavras por vez? Por exemplo: mexico --> emixoc python --> yphtno
  3. Opaeae

    Converter C em Python

    De C Para Converter Em Python 3 Por Favore #include <stdio.h> main() { int n, i, t, ligado, pessoas; ligado = 0; pessoas = 0; scanf("%d", &n); for(i = 0; i < n; i ++) { scanf("%d", &t); if (t >= ligado) pessoas += 10; else pessoas += t + 10 - ligado; ligado = t + 10; } printf("%d\n", pessoas); }
  4. Vejam o exemplo: d={'a': 6, 'b': 3, 'c': 8, 'd': 1} Agora desejo encontrar a chave que possui o maior value (nesse caso 'c') e com menor também (nesse caso 'd'). Já fiz essa mesma pergunta em outro forum e me deram uma solução simples utilizando funções lambda, porém ainda não aprendi como essas funções funcionam, por isso não posso utilizá-las, então preciso de outra solução. Essa foi a resposta no outro fórum: print(min(d, key=lambda k: d[k]) ) print(max(d, key=lambda k: d[k]) ) Basicamente preciso transformar as funções lambda acima em uma função com linguagem mais simples, mesmo que seja menos compacta.
  5. Implementar algoritmos recursivos nas seguintes situações: a) converter e imprimir um número natural A em base binária. b) multiplicação de dois números naturais B e C, através de somas sucessivas, por exemplo, B × C = 6 × 4 = 4 + 4 + 4 + 4 + 4 + 4. c) cálculo de 1 + 1/2 + 1/3 + 1/4 + ... + 1/N, onde N é um número natural diferente de zero. No item (a), tanto a conversão quanto a impressão devem ser resolvidas com recursão. Rotinas prontas na API do Python não podem ser adotadas na conversão. Nos itens (b) e (c) o processo de repetição inerente às operações deve ser substituído por recursões de calda. Entrada: Para cada um dos itens (a), (b) e (c) serão informados, respectivamente, um número natural A, dois números naturais B e C, e o número natural N via entrada padrão. Saída: Seu programa deverá imprimir na saída padrão os valores calculados. Valores em ponto flutuante devem ser exibidos com quatro casas decimais.
  6. Elaborar um programa que tenha subprogramas e leia da entrada padrão nomes completos de pessoas, compostos de nome e sobrenome(s), até que uma string vazia seja lida. Na saída escreva cada nome e/ou sobrenome com mais de dois caracteres que foram digitados mais de uma vez, mostrando eles em ordem alfabética. Implementar subprogramas que tenha métodos de ordenação. Exemplo: Entrada Carlos Drummond de Andrade Juca Kifuri Armando Carlos de Andrade e Silva Luís Carlos Kifuri Ana Silva Rolim Mariane Ribeiro Saída Andrade Carlos Kifuri Silva
  7. Gostaria que o programa criasse um novo dicionário a cada nome informado e guardasse os dados até que o usuário informasse um nome vazio (""). d = {} d['nome'] = input("Nome: ") d['A1'] = float(input("Informe A1: ")) d['A2'] = float(input("Informe A2: ")) d['B1'] = float(input("Informe B1: ")) d['B2'] = float(input("Informe B2: ")) Então o programa repete até que o usuário informe o nome vazio (""): while d['nome'] != "": d['nome'] = input("Nome do aluno: ") d['A1'] = float(input("Informe A1: ")) d['A2'] = float(input("Informe A2: ")) d['B1'] = float(input("Informe B1: ")) d['B2'] = float(input("Informe B2: ")) Porém, dessa forma os dados são substituídos. E IMPORTANTE gostaria que os dados fossem armazenados em um OUTRO dicionário. Exemplo: d={João, 1, 2, 3, 4} e={Maria, 3, 4, 5, 6} .....
  8. Boa tarde, Eu estava desenvolvendo um projeto para a escola e tive a necessidade de ter um servidor FTP a distribuir ficheiros pelos usuários automaticamente sem ser necessária a minha intervenção para mudar o nome do ficheiro que vai ser enviado. Quando eu coloco o nome manualmente o download do ficheiro corre perfeitamente porém quando eu tento automatizar a tarefa eu obtenho o erro ftplib.error_perm: 550 failed to open the file e eu nao entendo de onde vem esse problema. O servidor ftp está ser corrido em uma raspberry pi localmente. #O código do cliente from socket import* from ftplib import FTP serverName ='192.168.1.5' mensagem = r"15" serverPort =80 clientSocket = socket(AF_INET, SOCK_STREAM) clientSocket.connect((serverName, serverPort)) clientSocket.send(mensagem.encode()) response = clientSocket.recv(4096) print(response) Codigo do server: #O código do servidor import socket import threading bind_ip="192.168.1.5" bind_port=80 server = socket.socket(socket.AF_INET,socket.SOCK_STREAM) server.bind((bind_ip,bind_port)) server.listen(1000) def handle_client(client_socket): request=client_socket.recv(1024) print("[*]Recevid: ",request.decode('utf-8')) client_socket.send(r"ola.txt".encode()) client_socket.close() whileTrue: client,addr=server.accept() print("[*]Accepted connection from: ",addr[0]," ",addr[1]) client_handler=threading.Thread(target=handle_client(client)) client_handler.start() conteúdo do /etc/vsftpd.conf # Example config file /etc/vsftpd.conf # # The default compiled in settings are fairly paranoid. This sample file # loosens things up a bit, to make the ftp daemon more usable. # Please see vsftpd.conf.5 for all compiled in defaults. # # READ THIS: This example file is NOT an exhaustive list of vsftpd options. # Please read the vsftpd.conf.5 manual page to get a full idea of vsftpd's # capabilities. # # # Run standalone? vsftpd can run either from an inetd or as a standalone # daemon started from an initscript. listen=NO # # This directive enables listening on IPv6 sockets. By default, listening # on the IPv6 "any" address (::) will accept connections from both IPv6 # and IPv4 clients. It is not necessary to listen on *both* IPv4 and IPv6 # sockets. If you want that (perhaps because you want to listen on specific # addresses) then you must run two copies of vsftpd with two configuration # files. listen_ipv6=YES # # Allow anonymous FTP? (Disabled by default). anonymous_enable=NO # # Uncomment this to allow local users to log in. local_enable=YES # # Uncomment this to enable any form of FTP write command. write_enable=YES # # Default umask for local users is 077. You may wish to change this to 022, # if your users expect that (022 is used by most other ftpd's) #local_umask=022 # # Uncomment this to allow the anonymous FTP user to upload files. This only # has an effect if the above global write enable is activated. Also, you will # obviously need to create a directory writable by the FTP user. #anon_upload_enable=YES # # Uncomment this if you want the anonymous FTP user to be able to create # new directories. #anon_mkdir_write_enable=YES # # Activate directory messages - messages given to remote users when they # go into a certain directory. dirmessage_enable=YES # # If enabled, vsftpd will display directory listings with the time # in your local time zone. The default is to display GMT. The # times returned by the MDTM FTP command are also affected by this # option. use_localtime=YES # # Activate logging of uploads/downloads. xferlog_enable=YES # # Make sure PORT transfer connections originate from port 20 (ftp-data). connect_from_port_20=YES # # If you want, you can arrange for uploaded anonymous files to be owned by # a different user. Note! Using "root" for uploaded files is not # recommended! #chown_uploads=YES #chown_username=whoever # # You may override where the log file goes if you like. The default is shown # below. #xferlog_file=/var/log/vsftpd.log # # If you want, you can have your log file in standard ftpd xferlog format. # Note that the default log file location is /var/log/xferlog in this case. #xferlog_std_format=YES # # You may change the default value for timing out an idle session. #idle_session_timeout=600 # # You may change the default value for timing out a data connection. #data_connection_timeout=120 # # It is recommended that you define on your system a unique user which the # ftp server can use as a totally isolated and unprivileged user. #nopriv_user=ftpsecure # # Enable this and the server will recognise asynchronous ABOR requests. Not # recommended for security (the code is non-trivial). Not enabling it, # however, may confuse older FTP clients. #async_abor_enable=YES # # By default the server will pretend to allow ASCII mode but in fact ignore # the request. Turn on the below options to have the server actually do ASCII # mangling on files when in ASCII mode. # Beware that on some FTP servers, ASCII support allows a denial of service # attack (DoS) via the command "SIZE /big/file" in ASCII mode. vsftpd # predicted this attack and has always been safe, reporting the size of the # raw file. # ASCII mangling is a horrible feature of the protocol. #ascii_upload_enable=YES #ascii_download_enable=YES # # You may fully customise the login banner string: #ftpd_banner=Welcome to blah FTP service. # # You may specify a file of disallowed anonymous e-mail addresses. Apparently # useful for combatting certain DoS attacks. #deny_email_enable=YES # (default follows) #banned_email_file=/etc/vsftpd.banned_emails # # You may restrict local users to their home directories. See the FAQ for # the possible risks in this before using chroot_local_user or # chroot_list_enable below. #chroot_local_user=YES # # You may specify an explicit list of local users to chroot() to their home # directory. If chroot_local_user is YES, then this list becomes a list of # users to NOT chroot(). # (Warning! chroot'ing can be very dangerous. If using chroot, make sure that # the user does not have write access to the top level directory within the # chroot) #chroot_local_user=YES #chroot_list_enable=YES # (default follows) #chroot_list_file=/etc/vsftpd.chroot_list # # You may activate the "-R" option to the builtin ls. This is disabled by # default to avoid remote users being able to cause excessive I/O on large # sites. However, some broken FTP clients such as "ncftp" and "mirror" assume # the presence of the "-R" option, so there is a strong case for enabling it. #ls_recurse_enable=YES # # Customization # # Some of vsftpd's settings don't fit the filesystem layout by # default. # # This option should be the name of a directory which is empty. Also, the # directory should not be writable by the ftp user. This directory is used # as a secure chroot() jail at times vsftpd does not require filesystem # access. secure_chroot_dir=/var/run/vsftpd/empty # # This string is the name of the PAM service vsftpd will use. pam_service_name=vsftpd # # This option specifies the location of the RSA certificate to use for SSL # encrypted connections. rsa_cert_file=/etc/ssl/certs/ssl-cert-snakeoil.pem rsa_private_key_file=/etc/ssl/private/ssl-cert-snakeoil.key ssl_enable=NO # # Uncomment this to indicate that vsftpd use a utf8 filesystem. #utf8_filesystem=YES #banner ftpd_banner=Bem-vindo ao undean ftp server local_root=/home/pi/livros Se alguém me puder ajudar agradeço
  9. j6n1nhas

    pandas e matplotlib em PyQt5

    Olá caros companheiros; É a minha primeira publicação. No tempo da faculdade fiquei vidrado em C, mas não consegui continuar e acabei por não entrar no mercado de trabalho. Largos anos depois, há 1 ano sofri um acidente de trabalho que me escavacou a mão toda e desde então que tenho vindo a dedicar-me a Python. Depois de passar o básico da linguagem, tenho vindo a explorar as bibliotecas e depois de passar por django, agora é a vez de PyQt5. É extremamente complexo e há muitos conceitos que eu não conheço e antes de perceber como funcionam, preciso de saber o que são, por isso, está a levar algum tempo. A documentação é extremamente extensa, mas seca e técnica ao mesmo tempo. Por exemplo, estou a criar uma aplicação para chafurdar um pouco nos números nacionais do covid. Saquei os dados do SNS através de web scraping com requests e bs4, depois espetei tudo dentro de um csv e agora estou a trabalha-lo com o pandas. Na minha app, o simples facto de querer apresentar uma tabela com os dados, foi um desafio enorme para conseguir compreender o paradigma de model/view. Agora o desafio atual é conseguir apresentar gráficos na minha app. Encontrei um snippet com uma solução que na verdade funciona, mas acho-a extremamente complexa e desconfio que haverá forma mais simples de o fazer. Tenho tido alguma dificuldade em encontrar documentação mais prática e terra a terra do que aquela que se encontra na página do pyqt5. Têm alguns links porreiros (pá) com informação sobre isso que me possam aconselhar? Encontrei um guia porreiro (pá) que me está a conseguir explicar alguns conceitos básicos e essenciais do lado de matplotlib, como Figure, Axes, Axis e por aí... https://realpython.com/python-matplotlib-guide/ Já agora, deixo-vos aí a solução que encontrei para renderizar um plot na minha app: #!/usr/bin/python3 # -*- coding: utf-8 -*- import pandas as pd import matplotlib matplotlib.use('Qt5Agg') from matplotlib.backends.backend_qt5agg import FigureCanvasQTAgg as fg from matplotlib.figure import Figure import matplotlib.pyplot as plt from PyQt5.QtGui import QKeySequence from PyQt5.QtWidgets import (QMainWindow, QAction, QApplication, QLabel, QTableView, QHBoxLayout, QMenu, QTabWidget, QFrame, QGroupBox, QCheckBox, QGridLayout) from PyQt5.QtCore import QAbstractTableModel, QModelIndex, QVariant, Qt class MyApp(QMainWindow): def __init__(self): QMainWindow.__init__(self) self.ficheiro = 'covid.csv' self.setWindowTitle("Dados COVID Portugal") self.setGeometry(10, 10, 1000, 600) self.criar_widgets() self.criar_menus() self.setCentralWidget(self.grupo) def criar_widgets(self): self.grafico = MyCanvas() self.dados = pd.read_csv(self.ficheiro) grafico = self.dados.plot(x='Data', y=['Casos confirmados', 'Mortos', 'Em vigilância', 'Casos recuperados', 'A aguardar resultado', 'Casos suspeitos', 'Casos não confirmados'], kind='line', figsize=(20, 20), title='Números COVID em Portugal', grid=True) self.dados.plot(ax=self.grafico.axes) self.show() class MyCanvas(FigureCanvasQTAgg): def __init__(self, width=5, height=4, dpi=100): fig = Figure(figsize=(width, height), dpi=dpi) self.axes = fig.add_subplot(111) super(MyCanvas, self).__init__(fig) O código não está pronto a correr, porque entretanto pus-me a chafurdar nele à procura de novas soluções e neste momento está a modos que "partido". Meti só os imports que estou a fazer, embora no excerto não esteja a usá-los todos, e a parte que interessa para o gráfico. Ora, a ideia que encontrei foi criar uma classe que herda de FigureCanvasQTAgg para depois instanciá-la na aplicação e usá-la para renderizar o gráfico. Não liguem à indentação; partam do princípio que está correta porque no editor está tudo bem e depois quando passo para aqui, fica assim como se pode ver. Se alguém tiver alguma ideia mais simples de fazer isto, sem ter de criar uma classe, por exemplo, agradecia a dica. Entretanto vou continuar a batalhar para conseguir apresentar uma versão compacta que corra, para ajudar também que me possa vir a ajudar. Abraços, cumprimentos e saudações!
  10. imrri

    Python (Pycharm)

    Boa tarde, Iniciei um curso em python, estou a utilizar o IDE Pycharm acontece que não estou a conseguir por algumas bibliotecas neste caso o requests,pygame, etc Já vi imensos tutoriais como instalar faço tudo corretamente, mas quando faço import com requests aparece-me o request com simbolo de pasta. Precisava de ajuda. Obrigado
  11. Boas, Desenhei um widget no Desginer do Qt, e converti para python, e recorrendo ao tutorial, consigo executar o widget (duas textbox, 1 botão e um label). A ideia é somar o conteúdo das caixas, pressionar o botão e exibir o resultado numa label. No entanto, só consigo correr a widget, não sei como ler as caixas de texto nem como associar código ao clicar do botão. O código que corre o widget é o seguinte: from PyQt5 import uic from PyQt5.QtWidgets import QApplication Form, Window, Button = uic.loadUiType("PYQT_TUTORIAL.ui") app = QApplication([]) window = Window() form = Form() form.setupUi(window) window.show() app.exec_() Obrigado pela ajuda, cumprimentos.
  12. gncrd

    get request - cisco packet tracer

    Boa tarde, estou a utilizar o cisco packet tracer para simular um cenário IoT. Preciso de programar um microcontrolador para fazer um pedido get a uma api. O que acontece é que ele fica com os dados do get request na variável data, e eu preciso de colocar esses dados noutra variável qualquer para poder utilizar dentro da minha função main. Alguém me consegue dar uma dica de como fazer isso? Obrigado! def onHTTPDone(status, data): print("status: " + str(status)) print("data: " + data) def main(): http = RealHTTPClient() http.onDone(onHTTPDone) while True: http.get(url+'?mov=true') luz=digitalRead(0) valor=(luz*100)/1023 hora=strftime("%d/%b/%Y %H:%M:%S", gmtime()) #guarda data e hora actual na variavel dados_luz = {'nome_luz':'Sensor de luz','valor_luz':valor,'hora_luz':hora} http.post(url,dados_luz) #Envia percentgem de luz para o servidor if luz==LOW: #Se quantidade de luz for baixa customWrite(1,0) #liga as luzes dados_ilum_int={'nome_ilum_int':'Iluminacao interior','valor_ilum_int':1,'hora_ilum_int':hora} http.post(url,dados_ilum_int) elif luz==HIGH: #Se quantidade de luz for alta customWrite(1,0) #desliga as luzes dados_ilum_int={'nome_ilum_int':'Iluminacao interior','valor_ilum_int':0,'hora_ilum_int':hora} http.post(url,dados_ilum_int) sleep(5) if __name__ == "__main__": main()
  13. badpython

    Python - Objetos Imutáveis e Mutáveis

    Olá, estou com uma dúvida: Sabem-me dizer quais são as consequências de fazer várias referências a objectos mutáveis ou uma referência a um objecto imutável? Obrigado!
  14. Boa noite, Tenho uma duvida Como importo dados de txt ou de csv para selenium por exemplo Tabela Nome,Email,Data_Nascimento Jorge,@test.com,07/05/1990 Jorge,@test.com,07/05/1990 Jorge,@test.com,07/05/1990 Jorge,@test.com,07/05/1990 Queria fazer import e loop para continuar ate nao existir mais conteudo na tabela. Nao sei se fui explicito. Nome.send_keys('NOME') time.sleep(1) EMAIL.send_keys('EMAIL') time.sleep(1) DATANAS.send_keys('DATANASCIMENTO') time.sleep(1)
  15. Boa noite amigos, Tenho uma função que lida com números longos em python2. Pelo que li em python3 os números longos foram unificados e a função long deixou de existir e o L no final dos números deixou de ser necessário. Portanto eu fiz as alterações que me pareciam corretas mas o resultado que obtenho em python3 é um erro enquanto que em python2 é um número válido. Deixo as versões em python2 e em python3... Espero que alguém me consiga ajudar na identificação e resolução do problema. Pelos testes que fiz o meu v3 * 0.0 dá erro. Se for v3 * 0 já dá OK em python3. Não estou a conseguir perceber como fazer para em python3 produzir os mesmos resultados. Grato a quem me puder ajudar Python2 def inverse(u, v): """inverse(u:long, u:long):long Return the inverse of u mod v. """ u3, v3 = u, v u1, v1 = 1L, 0L while v3 > 0: q=u3 / v3 u1, v1 = v1, u1 - v1*q u3, v3 = v3, u3 - v3*q while u1<0: u1 = u1 + v return u1 v3 = 16328632084933010002384055033805457329601614771185955389739167309086214800406465799038583663495375294167564556218249812075026498049238137557936767564877129380031037096474576701424363585184425538239734829952673040443267770476629574802693913227893783846194285964464469846943061687644767462460965622580087564339212631775817895958409016676398975671266179637898557687317076217721884323315069515788106125705301913307854592898356222139631316962247550981844266104701843862648069010239662367183672047107559358990137503061077380023641379174265957374038711141877508504346564731250609196846638183903982387884578266136503697493474682071 print(inverse(1, v3)) #retorna 1 Python3 def inverse(u, v): """inverse(u:long, u:long):long Return the inverse of u mod v. """ u3, v3 = u, v u1, v1 = 1, 0 while v3 > 0: q=u3 / v3 u1, v1 = v1, u1 - v1*q u3, v3 = v3, u3 - v3*q while u1<0: u1 = u1 + v return u1 v3 = 16328632084933010002384055033805457329601614771185955389739167309086214800406465799038583663495375294167564556218249812075026498049238137557936767564877129380031037096474576701424363585184425538239734829952673040443267770476629574802693913227893783846194285964464469846943061687644767462460965622580087564339212631775817895958409016676398975671266179637898557687317076217721884323315069515788106125705301913307854592898356222139631316962247550981844266104701843862648069010239662367183672047107559358990137503061077380023641379174265957374038711141877508504346564731250609196846638183903982387884578266136503697493474682071 print(inverse(1, v3)) #Despoleta o seguinte erro: int to large to convert to float.
  16. Estou a usar PyQt5 e mariaDB, preciso de preencher uma tabela com os dados de um SELECT à base de dados, Para o mesmo SELECT os dados podem variar em Nº de Linhas e/ou Colunas A parte do SQL está a funcionar (minimamente, recebo uma lista), mas não consigo mostrar os valor (de uma forma simples e direta) na tabela Em VB.net é só 1 linha: dgvDados.DataSource = mdlMySQL.funGetDataTable(strQuery) -> esta função faz um fetchAll, basicamente e a tabela é preenchida automaticamente, com o nº de linhas, colunas, os nomes dos cabeçalhos etc... mostra os dados todos Em python, ainda não consegui fazer isto de forma tão simples. Alguma ideia, ou estou a pedir de mais?
  17. Adriana

    Construir uma classe

    Olá, Sou muito 'verde' em Python e estou a tentar resolver um exercício para o qual venho aqui pedir ajuda. Tenho que construir uma classe Time. Os atributos são hh e mm, que representam horas e minutos. A classe deve possuir: > Um construtor, def __init__(self,h,m):, com parâmetros que representam horas e minutos, por esta ordem. Deve originar uma excepção de tipo ValueError no caso de os seus valores não representarem um tempo válido (o valor da hora deve ser não negativo e os minutos devem estar entre 0 e 59). > Um método __str__, definido de modo que o output da instrução print(Time(2,3)) seja 2h03m. > Um método __lt__, de modo que seja possível comparar dois objectos de tipo Time, com o operador <; por exemplo, o output na consola para o input Time(1,59)<Time(2,0) deve ser True. > Um método __add__ que permita somar dois objectos de tipo Time. Por exemplo, o output da instrução print(Time(3,45)+Time(1,16)) deverá ser 5h01m. Construí o seguinte código em python 3.7. Está incompleto e não consegui usar o método __lt__e __add__ da maneira como está neste momento. Podem ajudar-me por favor? #construtor - alínea a) def __init__(self,h,m): self.hours=h self.minutes=m #__str__ - alínea b) def __str__(self): return str(self.hours)+"h"+str(self.minutes)+"m" #__lt__ - alínea c) def __lt__(self,other): if self.convert_to_minutes < other.convert_to_minutes: return True elif self>other: return False else: return "these events occur simultaneously" def convert_to_minutes(self): """converts Time object to an integer(# of minutes)""" minutes=self.hours*60+self.minutes return minutes #__add__ - alínea d) def __add__(self,other): import copy end_time=copy.deepcopy(self) minutes=self.convert_to_minutes()+other.convert_to_minutes() end_time.make_time(minutes) return end_time.__str__() def make_time(self,minutes): """converts from an integer to a Time object""" self.hours=minutes/60 minutes=minutes-self.hours*60 self.minutes=minutes
  18. dudusf04

    passar dados de uma página para outra

    Olá, Tenho um dúvida de como pegar um valor(que esta em uma variável) que esta em uma página e passar para outra, sendo que está outra pagina aparece com uma inclusion tag. já tentei fazer uma simple tag e enviar para o para a função da inclusion tag mas não funciona. desde já obrigado pela ajuda.
  19. PsySc0rpi0n

    melhorar script

    Boas. Estou a tentar fazer um programa que recebe dois paths, lê as imagens que estão no primeiro path, abre-as, depois converte-as para 'png' e salva-as no segundo path. Epá, fiz isto mas obviamente que isto está à pedreiro e não consegui usar o Pathlib devidamente. O que é que preciso mudar para isto não ficar assim tão à pedreiro? Para já nem liguei ao facto de eu verificar os argumentos passados depois de usar o primeiro argumento... Agora quero é perceber como usar o Pathlib para guardar as imagens numa nova pasta. import sys from pathlib import Path from PIL import Image # grab first and second argument # check if new/ exists, if not, create it # loop through the folder and convert to png # save to the new folder def proc_args(): """Process arguments from command line""" if len(sys.argv) < 3: print('Not enough parameters!') exit(-1) else: newpath = Path(sys.argv[2]) try: newpath.mkdir(parents=True, exist_ok=False) except FileExistsError: print(f'{newpath} already exists!') except IOError as ioerr: print(f'{ioerr}: {newpath} could not be created') return newpath def conv_imgs(pold_p, pnew_p): """Loop over files in folder""" for item in Path(pold_p).rglob('*.jpg'): img = Image.open(item) noext = item.with_suffix('') newext = noext.with_suffix('.png.png') tmp = Path(newext).stem print(tmp) img.save(Path(pnew_p).joinpath(tmp), 'png') def main(): """Main Function""" old_path = Path(sys.argv[1]) new_path = proc_args() conv_imgs(old_path, new_path) if __name__ == '__main__': main() Obrigado
  20. nokPT

    Migrar de .Net para Python

    Até agora só fiz projectos (com mais ou menos complexidade) com o Visual Studio em .Net Framework, agora necessito de fazer (ou refazer) um projecto em Python. Trabalhar em .Net no VisualStudio, é muito fácil, é criar/editar as várias forms, editar o código, double.click cria eventos, etc… é muito simples e transparente. Ando a estudar python (há 2 ou 3 dias), já andei há procura na net, mas não encontro como fazer de uma forma direta o mesmo que em .Net framework É possível criar forms, por exemplo com o Qt Designer, mas depois é preciso converter, acrescentar os eventos e editar/acrescentar o código. Se entretanto se quisermos alterar a form, o trabalho que tivemos até este momento, morre, porque ao converter, grava por cima do ficheiro anterior, podemos guardar uma cópia e fazer copy&paste, mas é necessário testar tudo outra vez porque é fácil esquecer de alguma coisa/linha. A minha dúvida, são várias, por exemplo: * Há alguma maneira, de editar graficamente as forms, sem ter que refazer o código todo outra vez? * Como é que junto todos os sub-ficheiros (módulo e forms) do projecto num único executavel?
  21. dudusf04

    Include em django

    Olá, Alguém poderá explicar a funcionalidade include em um html e djnago e como posso obter dados staticos deste html? Desde já muito obrigado pelo apoio.
  22. Denis

    Datetime ValueError

    Prezados... Estou tentanto executar o codigo abaixo date1 = datetime.strptime(str(dataMin), '%Y-%m-%d %H:%M:%S') date2 = datetime.strptime(str(dataAtual), '%Y-%m-%d %H:%M:%S') r = relativedelta.relativedelta(date2, date1) o problema é que meu dataMin é um Timestamp('2019-05-03 00:00:00') e o dataAtual tem o valor de datetime.datetime(2020, 1, 8, 8, 51, 16, 627867) Na compilação ocorre este erro ValueError: ('unconverted data remains: .627867', 'occurred at index (BTRBZZ00, BT#R0010, Q, E1)') Alguém pode me ajudar com este erro? Obrigado
  23. Fernanda Siqueira

    Fizzbuzz

    Dado um número n, para cada número inteiro i no intervalo de 1 a n, inclusive imprima um valor por linha da seguinte maneira: Se eu for múltiplo de 3 e 5, imprima o fizzbuzz Se i for múltiplo de 3(mas não 5), imprima fizz Se i for múltiplo de 5(mas não 3), imprima o Google Buzz Se i não for múltiplo de 3 e 5, imprima o valor de i
  24. tumash

    Sou um nabo de python

    Preciso fazer um algoritmo com estas indicações: Crie um dicionário vazio . Este dicionário irá conter os nomes e a nota final dos alunos de uma turma de uma escola. A chave de cada elemento do dicionário será o numero do aluno; o valor de cada elemento será um tuple, com o nome do aluno e a sua nota final. Numa iteração while, peça o numero do aluno ao utilizador. Depois, peça o nome do aluno e a nota. Construa um tuple com o nome a nota. Adicione um elemento ao dicionário dos alunos tendo como chave o numero do aluno e como valor o tuple que construiu. Em seguida, percorra o dicionário usando uma iteração e mostre os números dos alunos, os nomes e a respectiva nota na consola no seguinte formato: 3 – Rita: 14 4 – Pedro: 11 Em seguida, calcule a média final da nota da turma, com base nas notas dos alunos armazenados no dicionário e mostre-a no ecran.
  25. Thiago Dias de Melo

    Problema ao atribuir valor á uma string

    ola amigos! Quando eu vou atribuir uma tupla com valores do tipo string à uma lista, tambem do tipo string, a tupla é atribuida mas so parte dela, e nao ela como um todo, por que? estou tentando atribuir ‘hand’ à ‘out’ ja agradeço!! from random import randint hand = () out = [‘4s’] cartas = (‘4s’, ‘5s’) hand = (cartas[randint(0, 1)]) while hand in out: hand = cartas[randint(0, 1)] out += hand
×
×
  • Create New...

Important Information

By using this site you accept our Terms of Use and Privacy Policy. We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.