fabiodurgante Posted November 12, 2020 at 12:18 AM Report Share #620092 Posted November 12, 2020 at 12:18 AM ola tenho o seuinte em uma funcao com thread eecuta varias ao mesmo tempo lucro += resultado lucro = round(lucro,2) e nao tem maneira de conseguir quando executa 2 simultanao sempre da erro python TypeError: unsupported operand type(s) for +: 'int' and 'NoneType' o que posso fazer if lucro is None : lucro = 0 nao resolveu meu problema, a variavel lucro esta lucro=0 antes da funcao e nao funciona se nao for simultaneo funciona, somente 2 theads chamando a funcao ai da erro Link to comment Share on other sites More sharing options...
Gnrtuga Posted November 12, 2020 at 07:53 AM Report Share #620094 Posted November 12, 2020 at 07:53 AM Boas, antes de mais duas coisas: parece que escreveste tudo à pressa e por isso está muito confuso de se ler. Com o código é mais fácil de perceber o funcionamento do programa. Sugestão, fazer debug e colocar as variáveis no whatchlist. O meu palpite é que a variável acaba por passar para string. Podes fazer um print(type(nome_da_variavel)) para confirmares se se mantém em float. Também podes experimentar colocar um timer para dares tempo ao programa para executar. Boa sorte. Férias! Estou por aqui: http://maps.google.p...001549&t=h&z=20 (a bulir claro está!) Nunca mais é verão outra vez.. :) Link to comment Share on other sites More sharing options...
maluco-123 Posted November 13, 2020 at 01:07 AM Report Share #620129 Posted November 13, 2020 at 01:07 AM Boas, Para complementar a resposta anterior, Confirma em que linha é que está efetivamente a acontecer o problema, o stacktrace da exceção consegue-te ajudar nisso. Não sei em que versão do python estás, mas pelo que estou a perceber, quando o operador é '+=' ele mostra isso na exceção, portanto o erro pode não ser aí. Força nisso Link to comment Share on other sites More sharing options...
fabiodurgante Posted November 21, 2020 at 11:27 AM Author Report Share #620282 Posted November 21, 2020 at 11:27 AM consegui assim class Th(Thread): def __init__ (self, num): resultado = 0.0 Thread.__init__(self) init() variavel resultado dentro classe ai funcionou valeu pela ajuda ded todos Link to comment Share on other sites More sharing options...
Recommended Posts
Create an account or sign in to comment
You need to be a member in order to leave a comment
Create an account
Sign up for a new account in our community. It's easy!
Register a new accountSign in
Already have an account? Sign in here.
Sign In Now