<p>请尝试以下(<strong>更新的</strong>)代码:</p>
<pre><code>df2=df['betName'].str.split(r' (?=[+-]\d{1,}\.?\d{,}?)', expand=True).astype('str')
</code></pre>
<p><strong>解释。</strong>您可以使用<code>str.split</code>通过正则表达式将行中的文本拆分为两列或更多列:</p>
<pre><code> (?=[+-]\d{1,}\.?\d{,}?)
</code></pre>
<p><code>' '</code>-第一个是空格字符</p>
<p><code>()</code>-表示组的开始和结束</p>
<p><code>?=</code>-前瞻性断言。匹配如果。。。匹配下一个,但不使用任何字符串</p>
<p><code>[+-]</code>-一组字符。它将匹配+或-</p>
<p><code>\d{1,}</code>-<code>\d</code>是一个从0到9的数字,数字数为<code>{start, end}</code>。这里是指从1到任意数字:12004000等</p>
<p><code>\.?</code>-<code>\.</code>表示点和<code>?</code>-前面表达式组或符号的0或1个重复</p>
<p><strong>str.split(pattern=None,n=-1,expand=False)</strong></p>
<p><code>pattern</code>-要拆分的字符串或正则表达式。如果未指定,则按空格分割</p>
<p><code>n</code>-输出中的拆分数。无、0和-1将被解释为返回所有拆分</p>
<p><code>expand</code>-将拆分的字符串展开为单独的列</p>
<ul>
<li><code>True</code>用于将拆分的组放置到不同的列中</li>
<li><code>False</code>用于一行中字符串的系列/索引列表</李>
</ul>
<p>通过<code>.astype('str')</code>函数,您可以将数据帧转换为字符串类型</p>
<p><strong>输出。</strong></p>
<p><a href="https://i.stack.imgur.com/zBReb.png" rel="nofollow noreferrer"><img src="https://i.stack.imgur.com/zBReb.png" alt="The output."/></a></p>