回答此问题可获得 20 贡献值,回答如果被采纳可获得 50 分。
<p>我很难对python列表进行编码,我已经使用re模块用一个文本文件来计算其中的特定单词了。你知道吗</p>
<p>代码如下:</p>
<pre><code># encoding text file
with codecs.open('projectsinline.txt', 'r', encoding="utf-8") as f:
for line in f:
# Using re module to extract specific words
unicode_pattern = re.compile(r'\b\w{4,20}\b', re.UNICODE)
result = unicode_pattern.findall(line)
word_counts = Counter(result) # It creates a dictionary key and wordCount
Allwords = []
for clave in word_counts:
if word_counts[clave] >= 10: # We look for the most repeated words
word = clave
Allwords.append(word)
print Allwords
</code></pre>
<p>部分输出如下所示:</p>
<pre><code>[...u'recursos', u'Partidos', u'Constituci\xf3n', u'veh\xedculos', u'investigaci\xf3n', u'Pol\xedticos']
</code></pre>
<p>如果I <code>print</code>变量<code>word</code>,则输出看起来应该是这样的。但是,当我使用<code>append</code>时,所有的单词都会再次中断,如前面的示例所示。你知道吗</p>
<p>我用这个例子:</p>
<pre><code>[x.encode("utf-8") for x in Allwords]
</code></pre>
<p>输出看起来和以前完全一样。你知道吗</p>
<p>我也用这个例子:</p>
<pre><code>Allwords.append(str(word.encode("utf-8")))
</code></pre>
<p>输出会发生变化,但文字看起来不像应该的那样:</p>
<pre><code>[...'recursos', 'Partidos', 'Constituci\xc3\xb3n', 'veh\xc3\xadculos', 'investigaci\xc3\xb3n', 'Pol\xc3\xadticos']
</code></pre>
<p>一些答案给出了这个例子:</p>
<pre><code>print('[' + ', '.join(Allwords) + ']')
</code></pre>
<p>输出如下所示:</p>
<pre><code>[...recursos, Partidos, Constitución, vehÃculos, investigación, PolÃticos]
</code></pre>
<p>老实说,我不想打印列表,只是编码它,以便所有的项目(字)是公认的。你知道吗</p>
<p>我在找这样的东西:</p>
<pre><code>[...'recursos', 'Partidos', 'Constitución', 'vehículos', 'investigación', 'Políticos']
</code></pre>
<p>如有任何解决问题的建议,我们将不胜感激</p>
<p>谢谢你</p>