擅长:python、mysql、java
<p>您不想更改字符串,因此它是不可变的这一事实是无关的。你仍然可以用它制作新的物品。在</p>
<p>下面是一个小函数(tested,even;),它可以满足您的需要:</p>
<pre><code>def book_tuple(info):
book_author, searchable, ext = info.rsplit('.', 2)
book, author = book_author.rsplit(' - ', 1)
return book, author, searchable, ext
book_list = []
for filename in os.listdir('/home/username/Books'):
book_list.append(book_tuple(filename))
</code></pre>
<p>第一个拆分将<code>.rsplit()</code>与<code>2</code>一起使用,因此最多拆分两次(如果标题或作者名中有句点),并从结尾开始(同样,如果标题或作者名中有句点)。第二个拆分也会执行相同的操作,最大拆分为1(出于相同的原因)。在</p>