回答此问题可获得 20 贡献值,回答如果被采纳可获得 50 分。
<p>我只想打印字母,但它只打印ASCII的特殊字符。我的代码:</p>
<pre><code>import string
def caesar(shift):
alphabet = string.ascii_lowercase + string.ascii_uppercase
dict={}
emptylist=[]
int(shift)
for x in alphabet:
emptylist.<a href="https://www.cnpython.com/list/append" class="inner-link">append</a>(x)
code = ""
for letters in emptylist:
code = chr(ord(letters) + shift)
dict[letters]=code
return dict
caesar(12)
</code></pre>
<p>我的输出:</p>
<blockquote>
<p>'m': 'y', 'l': 'x', 'o': '{', 'n': 'z', 'q': '}', 'p': '|', 's': '\x7f', 'r': '~', 'u': '\x81', 't': '\x80', 'w': '\x83', 'v': '\x82', 'y': '\x85', 'x': '\x84', 'z': '\x86'</p>
</blockquote>
<p>正确输出:</p>
<blockquote>
<p>'m': 'y', 'l': 'x', 'o': 'a', 'n': 'z', 'q': 'c', 'p': 'b', 's': 'e', 'r': 'd', 'u': 'g', 't': 'f', 'w': 'i', 'v': 'h', 'y': 'k', 'x': 'j', 'z': 'l'</p>
</blockquote>