msmsms Posted February 23, 2014 at 08:26 PM Report #546405 Posted February 23, 2014 at 08:26 PM estou a tentar fazer um exemplo que tenho num livro e fiz o seguinte class Exemplo: valor = 123 def metodo(self): return 'exemplo '+self.valor if __name__=='__main__': i=Exemplo() print i.metodo() o livro parece ter um genero de plicas em self.valor só que se eu colocar peliculas vou concatenar 2 strings e o resultado esperado deve ser >>> exemplo 123 alguem consegue detectar o que está mal neste meu codigo para nao estar a obter isso?
thoga31 Posted February 23, 2014 at 08:28 PM Report #546406 Posted February 23, 2014 at 08:28 PM "exemplo" é uma String e "self.valor" é um Int. Achas que podes fazer assim? Knowledge is free!
msmsms Posted February 23, 2014 at 08:37 PM Author Report #546410 Posted February 23, 2014 at 08:37 PM (edited) "exemplo" é uma String e "self.valor" é um Int. Achas que podes fazer assim? eu sei que nao e o IDE avisa-me que nao posso concatenar uma string com um int mas o exemplo do livro esta assim como deixei em cima só que self.valor tem uma plicas curvas que nao sei se sao para considerar ou se sao alguma especiais que ainda nao conheço se eu colocar plicas em self.valor iguais as da string exmeplo o resultado é: >>> exemplo self.valor e o resultado que o livro diz que se obtem com este exemplo é >>> exemplo 123 que alteracao é que tenho de fazer sem ter de colocar o self na rua? ainda tentei com a virgula no lugar do + mas obtenho um tuplo com exemplo e o valor 123 é de facto obtido com o self.valor class Exemplo: valor = 123 def metodo(self): return 'exemplo ', self.valor if __name__=='__main__': i=Exemplo() print i.metodo() Edited February 23, 2014 at 08:43 PM by msmsms
thoga31 Posted February 23, 2014 at 08:41 PM Report #546411 Posted February 23, 2014 at 08:41 PM O livro não "está assim", tu próprio disseste que o livro tem algo mais. Plicas curvas? Nunca ouvi falar disso. Tens a certeza que não é uma vírgula? Tens duas hipóteses: ou fazes concatenação com conversão explícita, ou fazes print de múltiplos argumentos (ficam em linha). Nada te diz que tens de copiar tal-e-qual o livro. Podes meter uma mãozinha tua pelo meio, o que é muito saudável. Knowledge is free!
msmsms Posted February 23, 2014 at 09:29 PM Author Report #546413 Posted February 23, 2014 at 09:29 PM tirei uma foto da pagina ve aqui: http://oi60.tinypic.com/2e1hmax.jpg como é que faço a concatenação com '''conversão''' explícita?
thoga31 Posted February 23, 2014 at 09:33 PM Report #546414 Posted February 23, 2014 at 09:33 PM Já sei que "plicas" são essas. São acentos graves (já me estava a esquecer deles). como é que faço a concatenação com '''conversão''' explícita? Como convertes uma String num Int? Knowledge is free!
msmsms Posted February 23, 2014 at 09:52 PM Author Report #546415 Posted February 23, 2014 at 09:52 PM (edited) Já sei que "plicas" são essas. São acentos graves (já me estava a esquecer deles). Como convertes uma String num Int? sim acabei por fazer acentos graves ` ` e deu certo este livro nao explicou o acento grave em lado algum respondendo a tua pergunta seria mais como é que se converte um int numa string, acabei por fazer a conversao apenas estava mesmo preocupado com o facto de nao estar a fazer algo tal como esta no livo ate breve class Exemplo: 'descricao da classe' valor = 123 def metodo(self): return 'exemplo ' + str(self.valor) if __name__=='__main__': i=Exemplo() print i.metodo() print i.valor print i.__doc__ Edited February 23, 2014 at 09:53 PM by thoga31 Auto-quote removido
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