在python中,使用join()关键字对单词/字符计数有最大限制吗?

在python中,使用join()关键字对单词/字符计数有最大限制吗?,python,python-3.x,Python,Python 3.x,我尝试使用join()从列表中加入关键字。但我不知道为什么它在最后一次演讲中跳过了一些词 需要处理超过10000行的文本文件,并且新文件上只能打印以该关键字开头的行 import re keywords = ['=~=~=~', 'RED', 'Starting', 'Using', 'booting', 'EXPLICIT_APPROVE', 'communication', 'error', 'setting', 'writing', 'Drive', 'Failed', 'The',

我尝试使用join()从列表中加入关键字。但我不知道为什么它在最后一次演讲中跳过了一些词

需要处理超过10000行的文本文件,并且新文件上只能打印以该关键字开头的行

import re

keywords = ['=~=~=~', 'RED', 'Starting', 'Using', 'booting', 'EXPLICIT_APPROVE', 
'communication', 'error', 'setting', 'writing', 'Drive', 'Failed', 'The', 'Disk', 'SD', 
'!!Main', 'init', 'CPU', 'writings', 'unknown', 'disks', 'SDCARD', 'Size:', 'Clearing',
 'formatting', 'creating', 'et', 'YELLOW', 'SIM', 'temperature', 'led'] 

pattern = re.compile('|'.join(keywords))

print(pattern)
我已经附上下面的输出,请看一看

re.compile('=~=~=~|RED|Starting|Using|booting|EXPLICIT_APPROVE|communication|error|setting|writing|Drive|Failed|The|Disk|SD|!!Main|init|CPU|writings|unknown|disks|SDCARD|Size:|Clearing|formatting|creating|et|YEL)
你可以从黄色看到它有条纹


有没有办法克服这个问题?或者任何处理这个大txt文件的替代解决方案。这对我很有帮助。

正如@roganjosh在评论中提到的,问题在于类的
\uuu str\uuu()
方法,该类在
print
函数中调用。他已将该问题的细节联系起来

运行上面的代码会使您的模式等于-

re.compile(r'=~=~=~|RED|Starting|Using|booting|EXPLICIT_APPROVE|communication|error|setting|writing|Drive|Failed|The|Disk|SD|!!Main|init|CPU|writings|unknown|disks|SDCARD|Size:|Clearing|formatting|creating|et|YELLOW|SIM|temperature|led',
re.UNICODE)
由于某种原因,
打印
仅显示特定长度的字符串

您也可以这样做来获得完整的图案-

pattern = '|'.join(keywords)
print(pattern)

标题不正确。
join
确实有效。不,没有(在资源限制之外)更新我的答案,包括提到dup。澄清我的评论。
=~=~=~|RED|Starting|Using|booting|EXPLICIT_APPROVE|communication|error|setting|writing|Drive|Failed|The|Disk|SD|!!Main|init|CPU|writings|unknown|disks|SDCARD|Size:|Clearing|formatting|creating|et|YELLOW|SIM|temperature|led