Partage
  • Partager sur Facebook
  • Partager sur Twitter

supprimer ('','','') avec print

    5 août 2011 à 13:49:00

    bonjour,
    je suis en train de creer un petit programme python, et j'aimerais savoir comment supprimer les (',) lors d'un print.
    voici mon code complet :

    print ("""entrez votre phrase""")
    str1 = raw_input()
    
    
    nb = len(str1)
    
    
    print(nb)
    
    print("""[color=black]""" , str1[0],"""[/color]"""),
    
    nb-=1
    a=1
    
    
    while a!=nb+1 :
    	if a%2==0 :
    		print("""[color=black]""",str1[a],"""[/color]"""),
    	if a%2!=0:
    		print("""[color=white]""",str1[a],"""[/color]"""),
    	
    
    	a+=1
    


    j'espere que c'est faisable.

    Merci d'avance pour une future reponse,

    Pierre
    • Partager sur Facebook
    • Partager sur Twitter
    Anonyme
      5 août 2011 à 13:58:38

      tu mélanges la version 2.x et la version 3.x de python.

      Regarde le tutoriel du site :)
      • Partager sur Facebook
      • Partager sur Twitter
        5 août 2011 à 14:27:03

        c'est grave de melanger ? (je ne fait pas de python depuis tres longtemps...)

        merci (je n'avais pas pensé a le relire :oops:)

        peut etre que j'ai mal cherché, mais j'aimerais aussi supprimer les espaces entre les prints.
        Est ce possible ?
        • Partager sur Facebook
        • Partager sur Twitter
          5 août 2011 à 15:01:28

          Citation : PI3RR3-29

          print var1, var2,
          print var3, var4
          
          , tout simplement.
          • Partager sur Facebook
          • Partager sur Twitter
          yjltg.
          Anonyme
            5 août 2011 à 15:24:16

            Citation

            c'est grave de melanger ? (je ne fait pas de python depuis tres longtemps...)



            Eh bien oui ça ne donnera pas le résultat voulu (voir un message d'erreur de syntaxe)

            Si t'es en version 2.x ce que je pense, suivre les indications de quelqun_dautre
            • Partager sur Facebook
            • Partager sur Twitter
              5 août 2011 à 23:31:30

              un truc très môche mais je suis vraiment nul en formatage de chaine:

              print ("""entrez votre phrase""")
              str1 = raw_input()
              ''.join([('[color=white]' if e&1 else '[color=black]')+i+'[/color]'for e,i in enumerate(str1)])
              

              • Partager sur Facebook
              • Partager sur Twitter

              Python c'est bon, mangez-en. 

                6 août 2011 à 14:20:42

                Fred : je croit que je suis sous Python 3
                Josmiley : pourrais tu decomposer ton code (je ne le comprend pas entierement) ?
                • Partager sur Facebook
                • Partager sur Twitter
                Anonyme
                  6 août 2011 à 14:27:54

                  Citation

                  Fred : je croit que je suis sous Python 3



                  Croire ne suffit pas, surtout dans ce cas, vérifie ta version tout simplement.

                  >>> import sys
                  >>> sys.version
                  


                  Citation

                  pourrais tu decomposer ton code (je ne le comprend pas entierement) ?



                  Et si tu testais toi même?

                  >>> [e&1 for e in range(10)]
                  [0, 1, 0, 1, 0, 1, 0, 1, 0, 1]
                  >>> ''.join(['Sa', 'lut'])
                  'Salut'
                  


                  pas mal le on-line josmiley :)

                  En simple ça donne ça à quelquechose près

                  str1 = raw_input('Entre ta phrase :')
                  
                  debut = ['[color=white]', '[color=black]']
                  fin = '[/color]'
                  result = ''
                  for i, j in enumerate(str1):
                      if i%2:
                          result += debut[0]+j+fin
                      else:
                          result += debut[1]+j+fin
                  
                  print result
                  
                  • Partager sur Facebook
                  • Partager sur Twitter
                    6 août 2011 à 17:58:34

                    print("[color=black]{0}[/color]".format(str1[a]))
                    
                    • Partager sur Facebook
                    • Partager sur Twitter
                      7 août 2011 à 1:12:48

                      Citation : fred1599

                      Citation

                      Fred : je croit que je suis sous Python 3



                      Croire ne suffit pas, surtout dans ce cas, vérifie ta version tout simplement.



                      sur un PC, j'ai la 3,mais sur l'autre, c'est la 2...


                      Citation : fred1599


                      >>> import sys
                      >>> sys.version
                      



                      Citation

                      pourrais tu decomposer ton code (je ne le comprend pas entierement) ?



                      Et si tu testais toi même?

                      >>> [e&1 for e in range(10)]
                      [0, 1, 0, 1, 0, 1, 0, 1, 0, 1]
                      


                      en faite, ce que je ne comprend pas dans ce code, c'est le
                      [e&1
                      
                      Que veut-il dire ?
                      • Partager sur Facebook
                      • Partager sur Twitter
                        7 août 2011 à 1:36:47

                        & c'est le ET logique
                        voir les opérateurs logiques http://fr.wikipedia.org/wiki/Alg%C3%A8 [...] %28logique%29
                        • Partager sur Facebook
                        • Partager sur Twitter

                        Python c'est bon, mangez-en. 

                          7 août 2011 à 7:07:23

                          Citation : josmiley

                          & c'est le ET logique
                          voir les opérateurs logiques Algèbre_de_Boole_(logique)



                          En l'occurence ici c'est plus l'opérateur & bit à bit que l'opérateur logique…
                          • Partager sur Facebook
                          • Partager sur Twitter
                          Zeste de Savoir, le site qui en a dans le citron !
                            7 août 2011 à 11:49:17

                            Citation : nohar

                            Citation : josmiley

                            & c'est le ET logique
                            voir les opérateurs logiques Algèbre_de_Boole_(logique)



                            En l'occurence ici c'est plus l'opérateur & bit à bit que l'opérateur logique…



                            c'est pareil non? en informatique que peut-on comparer d'autres que des bits ...
                            foo and bar c'est le raccourci de (foo is True)&(bar is True) et je suppose que les boléens sont codés sur un octet genre vraie = 0xff e faux = 0x00.
                            • Partager sur Facebook
                            • Partager sur Twitter

                            Python c'est bon, mangez-en. 

                              7 août 2011 à 13:29:37

                              @josmiley: Opérateur bit à bit ca suppose que tu donnes en entrée des suites de bits (souvent des octets). Les opérateurs logiques en eux-mêmes ne peuvent qu'agir sur un bit. C'est une question de précision.
                              • Partager sur Facebook
                              • Partager sur Twitter
                              yjltg.
                                7 août 2011 à 15:37:38

                                Bonjour,

                                Citation : PI3RR3-29

                                je suis en train de creer un petit programme python, et j'aimerais savoir comment supprimer les (',) lors d'un print.


                                Si j'ai bien compris ta question (tu voudrais que la console n'affiche pas de ',' entre les éléments passés à print(), c'est bien cela ?), la définition de print() devrait t'aider :
                                print([object, ...], *, sep=' ', end='\n', file=sys.stdout)
                                


                                _______

                                Citation : josmiley

                                Citation : nohar

                                En l'occurence ici c'est plus l'opérateur & bit à bit que l'opérateur logique…


                                c'est pareil non? en informatique que peut-on comparer d'autres que des bits ...
                                foo and bar c'est le raccourci de (foo is True)&(bar is True) et je suppose que les boléens sont codés sur un octet genre vraie = 0xff e faux = 0x00.


                                Non, ce n'est pas pareil, il y a une subtile différence :
                                http://en.wikipedia.org/wiki/Short-circuit_evaluation

                                Je te laisse tester ceci :
                                def fn():
                                    print('entry')
                                    return False
                                
                                if fn() and fn() and fn():
                                    print('fail')
                                
                                if fn() & fn() & fn():
                                    print('fail')
                                


                                Sinon, les opérateurs bit-à-bit ne se limitent pas aux opérateurs dits "logiques", c'est bien une famille à part.
                                • Partager sur Facebook
                                • Partager sur Twitter

                                supprimer ('','','') avec print

                                × Après avoir cliqué sur "Répondre" vous serez invité à vous connecter pour que votre message soit publié.
                                × Attention, ce sujet est très ancien. Le déterrer n'est pas forcément approprié. Nous te conseillons de créer un nouveau sujet pour poser ta question.
                                • Editeur
                                • Markdown