Python, comment puis-je imprimer le datetime courant sur la même ligne comme un message texte?
-
13-10-2019 - |
Question
Premières expériences avec Python ici, je veux être en mesure d'imprimer un texte avec l'heure / date que le premier élément sur la ligne.
est ce que je suis en mesure de faire cuire jusqu'à présent, mais il semble que je suis syntaxiquement incorrect, quelqu'un peut-il s'il vous plaît me corriger?
import socket
import sys
import time
import datetime
remote_host = "127.0.0.1"
now = datetime.datetime.now()
for remote_port in [9002,8080]:
now_text = now.strftime("%Y-%m-%d %H:%M")
sock = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
sock.settimeout(60)
try:
sock.connect((remote_host, remote_port))
except Exception,e:
print "%d %d closed " % now_text remote_port
else:
print "%d %d open" % now_text remote_port
sock.close()
Amitiés
La solution
Je pense que vous cherchez quelque chose comme
print "%d %d closed" % (now_text, remote_port)
Pour référence ultérieure, voici une façon de le faire en Python 3:
print("{0} {1} closed".format(now_text, remote_port))
La méthode .format()
a été introduit dans le python 2.6.
Autres conseils
Deux erreurs possibles (la seconde définie):
- besoins de
Exception,e
à remplacer parException as e
(selon la version Python). - L'opérateur% nécessite un argument tuple.
"%d %d closed" % (a, b)
>>> print "%s %d closed " % (now_text,remote_port)
2011-03-15 14:46 9002 closed
Ceci est mon opinion:
#the code below will print the date and time on separate lines.
from datetime import datetime
now =datetime.now()
print('%s/%s/%s' %(now.month,now.day,now.year))
print('%s:%s:%s' %(now.hour,now.minute,now.second))
Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow