<p>我想我大致可以看出你的意图,但如果我错了,请纠正我:</p>
<p>您希望通过反转输入字符串对消息进行置乱,并每6个字符添加一个随机符号</p>
<p>您已经反转了字符串,并且正在对每个字符进行迭代,但是没有弄清楚如何使用随机符号构建新字符串</p>
<p>如果要计算每6个字符的数量,除了字符本身之外,还需要一个数字来跟踪每个字符。为此,在<code>for</code>循环中使用<code>enumerate</code>函数非常方便。然后,您可以使用数学计算您是否在第6个字符上:</p>
<pre><code>for index, letter in enumerate(word):
if index % 2 == 0 and index % 3 == 0:
# what do I put here??????????????
print(word)
</code></pre>
<p>从这里开始,您需要开始构建新的输出字符串(您只能在python中创建新字符串,而不能修改现有字符串。覆盖变量可能看起来像修改现有字符串,但在内部,它会在覆盖现有字符串之前创建一个完整的新字符串,这就是为什么您不能执行以下操作:<code>my_string[3] = 'G'</code>). 为此,我们将创建一个变量,并按以下顺序添加字符:</p>
<pre><code>new_word = '' #empty string
for index, letter in enumerate(word):
new_word = new_word + letter
if index % 2 == 0 and index % 3 == 0:
# what do I put here??????????????
print(new_word)
</code></pre>
<p>现在,为了获得一个随机符号来添加每6个字符,我们将通过在脚本开头调用<code>import random</code>来使用<code>random</code>库。<code>random.choice()</code>函数将从符号列表中选择一个随机元素,然后将其添加到我们正在构建的<code>new_word</code>中</p>
<pre><code>new_word = '' #empty string
for index, letter in enumerate(word):
new_word = new_word + letter
if index % 2 == 0 and index % 3 == 0:
random_char = random.choice(symbols)
new_word = new_word + random_char
print(new_word)
</code></pre>