首先使用Python体验,我希望能够打印出一些当前时间/日期作为第一项的文本。
到目前为止,这是我能够做到的,但看起来我的语法不正确,有人可以帮我纠正吗?
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()
亲切的问候
答案 0 :(得分:5)
我认为你正在寻找像
这样的东西print "%d %d closed" % (now_text, remote_port)
为了将来参考,这里有一种方法可以在Python 3中实现:
print("{0} {1} closed".format(now_text, remote_port))
在Python 2.6中引入了.format()
方法。
答案 1 :(得分:1)
两个可能的错误(第二个明确的错误):
Exception,e
需要替换为Exception as e
(取决于Python版本)。"%d %d closed" % (a, b)
。答案 2 :(得分:0)
>>> print "%s %d closed " % (now_text,remote_port)
2011-03-15 14:46 9002 closed
答案 3 :(得分:0)
这是我的看法:
#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))