擅长:python、mysql、java
<p>问题是您在所有的空白处分割字符串,这就是<code>str.split()</code>所做的。相反,您应该在<code>'-'</code>处拆分它们,然后从结果中去掉空白。你知道吗</p>
<p>代码-</p>
<pre><code>def dict():
with open('admins.txt', 'r') as document:
answer = {}
for line in document:
if line.strip():
key, value = line.split('-', 1)
answer[key.strip()] = [v.strip() for v in value.split('-')]
return answer
</code></pre>
<p>演示-</p>
<pre><code>>>> s = '0001 - Juan Carlos - Botero Mora - jcboterom - snf23jn4'
>>> key,value = s.split('-',1)
>>> answer = {}
>>> answer[key.strip()] = [v.strip() for v in value.split('-')]
>>> answer
{'0001': ['Juan Carlos', 'Botero Mora', 'jcboterom', 'snf23jn4']}
</code></pre>