回答此问题可获得 20 贡献值,回答如果被采纳可获得 50 分。
<p>我见过这个问题的解决方案是其他问题,但在Python中没有。我在想,如何在一个字符串中的每个x值字符后面插入一个字符?例如,每四个字符后加一个正斜杠:</p>
<pre><code>Before:
AsQs7d4dJh2h
After:
AsQs/7d4d/Jh2h
</code></pre>
<p>我知道在Python中我必须使用切片表示法。
x=AsQs7d4dJh2h
x=x[0:4]</p>
<p>但这只给了我第一个例子,我希望能够在任何字符串上都这样做,而不管字符串的长度</p>
<p><strong更新:<strong新问题>
我要做的是将字符串分离成卡片对(2-card texas holdem),问题是算法没有考虑到'10'卡片,因此将每4张分开是不起作用的,例如,当字符串中有10张卡片时会发生这种情况:</p>
^{pr2}$
<p>所以我需要帮助的是如何插入一个正斜杠或从字符串中提取所有2个牌手(在本例中是3个手牌),而不管字符串中是否有1张或多张“10”牌?在</p>
<p>完整算法:</p>
<pre><code>import itertools
strOutput = ""
lstMaster = ['As', 'Ks', 'Qs', 'Js', '10s', '9s', '8s', '7s', '6s', '5s', '4s', '3s', '2s',\
'Ad', 'Kd', 'Qd', 'Jd', '10d', '9d', '8d', '7d', '6d', '5d', '4d', '3d', '2d',\
'Ac', 'Kc', 'Qc', 'Jc', '10c', '9c', '8c', '7c', '6c', '5c', '4c', '3c', '2c',\
'Ah', 'Kh', 'Qh', 'Jh', '10h', '9h', '8h', '7h', '6h', '5h', '4h', '3h', '2h']
tupMasterEdited = itertools.combinations(lstMaster, 6)
lstMasterEdited = list(tupMasterEdited)
for combo in lstMasterEdited:
combo = str(combo).replace("(", "").replace(")", "").replace(" ", "").replace(",", "").replace("'", "")
combo = '/'.join([combo[i:i+4] for i in range(0, len(combo), 4)])
print(combo)
</code></pre>