在python中,使用join()关键字对单词/字符计数有最大限制吗?
我尝试使用join()从列表中加入关键字。但我不知道为什么它在最后一次演讲中跳过了一些词 需要处理超过10000行的文本文件,并且新文件上只能打印以该关键字开头的行在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',
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