python : komma in print als “\t”

de ,in print heeft een witruimte toegevoegd

>>> print "a","b"
a b

Als ik een \tnodig heb, plaats ik

>>> print "a","\t","b"
a       b

Hoe kan ik de uitvoer van ,veranderen in een \t?


Antwoord 1, autoriteit 100%

U kunt de functie print()importeren uit __future__en sep='\t', print()is geïntroduceerd in python 3 en vervangt de print-instructie die wordt gebruikt in python 2.x:

In [1]: from __future__ import print_function
In [2]: print('a','b',sep='\t')
a   b

hulp bij print():

print(...)
    print(value, ..., sep=' ', end='\n', file=sys.stdout)
Prints the values to a stream, or to sys.stdout by default.
Optional keyword arguments:
file: a file-like object (stream); defaults to the current sys.stdout.
sep:  string inserted between values, default a space.
end:  string appended after the last value, default a newline.

Antwoord 2, autoriteit 83%

Gebruik str.join()in plaats daarvan:

print '\t'.join(('a', 'b'))

De python printinstructie zal elk element in de expressie converteren naar string en ze samenvoegen met een spatie; als je een ander scheidingsteken wilt gebruiken, moet je het samenvoegen handmatig doen.

U kunt ook de print()function, die is geïntroduceerd om de overgang naar Python 3 te vergemakkelijken:

from __future__ import print_function
print('a','b',sep='\t')

De functie print()accepteert een parameter sepom te wijzigen welke tekenreeks wordt gebruikt om de waarden af te bakenen. In python 3 blijft alleen de functie print()over en is de oude instructie printuit python 2 verwijderd.


Antwoord 3

De gemakkelijkste manier

print("%s\t%s",%(a,b))

Antwoord 4

https://docs.python.org/2/reference/simple_stmts .html#print

zoals deze print "Hello", "workd!",

Other episodes