Python Don';动态生成文件名时,无法理解此字符串连接错误

Python Don';动态生成文件名时,无法理解此字符串连接错误,python,python-3.7,Python,Python 3.7,我有一个奇怪的字符串连接错误,我似乎无法理解 这是我的密码: message = clientSocket.recv( 8000 ).decode( "UTF-8" ) data=message.split(",")#split the string using delimiter ID=data.pop()#remove and return ID ID=''.join(ID)#make the list into a string ID=ID.replace("\n", "")#strip

我有一个奇怪的字符串连接错误,我似乎无法理解

这是我的密码:

message = clientSocket.recv( 8000 ).decode( "UTF-8" )
data=message.split(",")#split the string using delimiter
ID=data.pop()#remove and return ID
ID=''.join(ID)#make the list into a string
ID=ID.replace("\n", "")#strip the \n
Pdata=data
print(ID)
print(type(ID))
print(Pdata)
#Dynamically make new filename using time and ID
filename = datetime.now().strftime("%Y%md_%H%M%S%f")+"."+ID+".csv"
print(filename)
这里的输出是:

H3
['+2.07767994E-06','+8.7037……']
.csv0314_185741582956.H3
看起来前几个字符被
“.csv”
覆盖了。我正在尝试获取正确的文件名,它应该是
'20190314\u 185741582956.H3.csv'

我无法正确打开文件名并在其中存储
Pdata
,并出现该错误。
我遗漏了什么吗?

如果变量
ID
包含
\r
字符,则可能会得到显示的输出。添加另一个替换以将“\r”替换为“”,您将获得一个外观更好(且有效)的文件名

即使字符串格式有错误(%d之前缺少),代码仍能正常工作,除此之外,它工作正常。我猜
ID
中有
\r
。您应该创建一个-其中有很多无关的代码,可能与问题无关(其他人无法使用这些代码重现问题)。我们还需要查看
消息
可能包含哪些数据的示例。如果没有这些更改,我们只能猜测…“\r”是它…谢谢大家!谢谢“\r”…非常感谢您的帮助。