擅长:python、mysql、java
<p>您需要<a href="https://docs.python.org/3/library/stdtypes.html#str.split" rel="nofollow noreferrer">^{<cd1>}</a>拆分<code>","</code>上的字符串,然后可以使用<a href="https://docs.python.org/3.8/library/itertools.html#itertools.product" rel="nofollow noreferrer">^{<cd3>}</a>获得两个列表的笛卡尔乘积:</p>
<pre><code>from itertools import product
x = "a1,a2,a3"
y = "b1,b2,b3"
print([fst + snd for fst, snd in product(x.split(","), y.split(","))])
# ['a1b1', 'a1b2', 'a1b3', 'a2b1', 'a2b2', 'a2b3', 'a3b1', 'a3b2', 'a3b3']
</code></pre>
<p>您也可以在列表理解中执行此操作,以获得相同的结果:</p>
<pre><code>print([fst + snd for fst in x.split(",") for snd in y.split(",")])
# ['a1b1', 'a1b2', 'a1b3', 'a2b1', 'a2b2', 'a2b3', 'a3b1', 'a3b2', 'a3b3']
</code></pre>
<p>或者使用与原始方法类似的解决方案:</p>
<pre><code>z = []
for fst in x.split(","):
for snd in y.split(","):
z.append(fst + snd)
print(z)
# ['a1b1', 'a1b2', 'a1b3', 'a2b1', 'a2b2', 'a2b3', 'a3b1', 'a3b2', 'a3b3']
</code></pre>