Python,如何在同一行打印当前日期时间和文本消息?

2 投票
4 回答
5567 浏览
提问于 2025-04-16 08:59

我刚开始接触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()

谢谢大家!

4 个回答

0
>>> print "%s %d closed " % (now_text,remote_port)
2011-03-15 14:46 9002 closed

这段代码是用来做某些操作的,但具体的功能需要根据上下文来理解。一般来说,代码块里可能包含一些指令或者逻辑,用于实现特定的任务。

如果你看到这样的代码块,通常它们是程序的一部分,可能是函数、变量或者其他编程元素。理解这些代码的关键在于知道它们在整个程序中是如何工作的。

总之,代码块就像是一个工具箱,里面装着各种工具(代码),你可以根据需要去使用它们来完成你的编程任务。

1

可能会出现两个错误(第二个是肯定会出现的):

  1. Exception,e 需要改成 Exception as e(这取决于你用的Python版本)。
  2. 百分号(%)运算符需要一个元组作为参数:"%d %d closed" % (a, b)
5

我觉得你想要的东西大概是这样的:

print "%d %d closed" % (now_text, remote_port)

供你将来参考,这里有一种在Python 3中实现的方法:

print("{0} {1} closed".format(now_text, remote_port))

.format()这个方法是在Python 2.6中引入的。

撰写回答