繁体   English   中英

Python中带有\\ r \\ n的字符串未在SCADA标记中呈现回车换行符

[英]Strings in Python with \r\n not rendering carriage return line feed in SCADA tags

我有一个python脚本,我一次在其中建立一个字符串。 我在字符串的每一行的末尾添加“ \\ r \\ n”,但最后一行除外。 该字符串将写入Ignition SCADA的标签中。 当我检查标签的内容时,'\\ r \\ n'应该在其中创建了回车/换行符,我所拥有的只是一个空格('')。

知道为什么这样做的原因以及如何正确设置字符串的格式吗?

谢谢!

编辑:这是代码:

myStr = ''
for i in range(1, 10):
    myStr += 'This is line ' + str(i) + '.\r\n'
resp = system.tag.write('myStrTag', myStr)
print myStr

点火正在清除这些字符串标签的输入。 您不能有多行字符串,但是它“知道”您想要包含的字符串。 因此,它将您的输入转换为空格字符,而不是将其保留为原义的“ \\ r \\ n”。 如果需要,可以包含两个反斜杠字符。

myStr += 'This is line ' + str(i) + '.\\r\\n'

如果您希望字符串实际以多行显示在屏幕上,则需要将其格式化为HTML字符串。 这是Ignition用于存储和显示具有其他格式的字符串的方法。 它实际上工作得很好,并且可以理解大多数HTML和CSS属性。 下面提供一个示例。

myStr = '<html>'
for i in range(1, 10):
    myStr += 'This is line ' + str(i) + '<br>'
myStr += 'This is the final line' + '</html>'
resp = system.tag.write('[default]Development/String Testing', myStr)
print myStr

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM