python 的字典裏多行註釋失敗

最近在寫編譯原理的課程設計,發現python一個很奇怪的問題,現在記錄在這裏:

我新建一個字典,因爲有時需要換不同的數據,所以習慣把原來的數據註釋掉測試。
但是發現一個很奇怪的bug,就是字典裏的多行註釋貌似也被當成了數據。

dic_a = {
    """
    ‘x':2,
    'y':3
    """
    'a':'b',
    'c':'d'
    }
 
print('keys:')   
for i in dic_a.keys():
#把字典的值都打印出來
    print(i)
    
print('values:')
for i in dic_a.values():
#把字典的值都打印出來
    print(i)
    
print(dic_a)
#把整個字典打印出來

於是得到了這個奇怪的結果:
在這裏插入圖片描述

仔細想了一下原因,應該是註釋也被當作數據了
仔細觀察輸出後的字典,應該是因爲python‘ 和 “ 不區分導致的,第一個元素的鍵值其實是:在這裏插入圖片描述

在註釋開始到第一個元素a那裏
在這裏插入圖片描述
最開頭的“和a右邊的‘中間那部分:""\n ‘x’:2,\n ‘y’:3\n “”"\n 'a都被當作了第一個鍵

但是不知道爲什麼把鍵值打印出來變成了:
在這裏插入圖片描述
可以看到一些引號消失了

刪掉註釋後,得到正常結果:

dic_a = {
    'a':'b',
    'c':'d'}
print('keys:')
for i in dic_a.keys():
    print(i)

print('values:')
for i in dic_a.values():
    print(i)

print('dic_a:')
print(dic_a)

在這裏插入圖片描述

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章