疑問一:
(2018-03-27)今天學(xué)習(xí)python中的字典蝙昙,做練習(xí)題的時候杭棵,出現(xiàn)了這個錯誤,如下:
檢查過程:
1. 先檢查代碼,并沒有發(fā)現(xiàn)有什么錯誤氮惯。
2. 檢查標點符號觅捆,是否有中英文輸錯赦役,發(fā)現(xiàn)也都是正確的。
3. 最后實在看不出什么錯誤栅炒,把錯誤提示百度了一下掂摔,才發(fā)現(xiàn)了原來是縮進問題。
if語句不應(yīng)該縮進
總結(jié):
剛開始了解python的時候赢赊,看網(wǎng)上教程或者是電子書都有提示到python縮進格式的嚴格乙漓,現(xiàn)在遇到這個問題,記錄起來释移,提醒自己叭披。
疑問二:
(2018-03-27)依然是上面的練習(xí)題:
檢查過程:
1. 發(fā)生疑問一的時候,一開始以為代碼問題玩讳,所以就把value這個變量取掉涩蜘,改用了keys()這個方法嚼贡,后面發(fā)現(xiàn)是縮進問題,修改了縮進同诫,把變量value改回來了粤策,就忘記改回items()方法
2. 查看了前面的運行結(jié)果,發(fā)現(xiàn)并沒有出現(xiàn)這個問題剩辟,再一次檢查了代碼掐场,才發(fā)現(xiàn)方法用錯,修改方法之后就正常了贩猎。
總結(jié):
雖然把修改過來了熊户,預(yù)期結(jié)果也如自己想要的輸出,但是使用了這個keys()這個方法吭服,為什么會把字典中的keys拆分呢嚷堡?現(xiàn)在還不清楚,后續(xù)了解清楚艇棕,將回來解決這個問題蝌戒。留下這個問題繼續(xù)學(xué)習(xí)。
備注:(后續(xù)修改)
當然沼琉,如果有了解這個的同學(xué)也可以指教指教北苟,歡迎留言,謝謝打瘪!
疑問三:
(2018-3-27)使用set()函數(shù)時友鼻,原計劃是想把調(diào)查表中的用戶喜歡的語言不重復(fù)的打印出來,得到了圈紅框中的結(jié)果闺骚,跟預(yù)期想要的帶的結(jié)果不一樣彩扔。
檢查過程:
1. ?首先先通過結(jié)果了解一下,輸出的結(jié)果是字符集僻爽,亂序虫碉,通過java這個結(jié)果返回了jav,說明確實有去重了胸梆。
2. ?接下來研究為什么是字符集呢敦捧,一開始并沒有對set()函數(shù)有太多的了解,僅以為是去重功能碰镜,所以上網(wǎng)搜索了相關(guān)資料绞惦,了解到了set()函數(shù)的其它用法,網(wǎng)上有很多資料洋措,這里著重解釋一下為什么是字符集(當然這是我自己的理解济蝉,不一定正確,僅供參考)。
3. ?用for語句循環(huán)了字典中的值王滤,先不分析set()贺嫂,只是打印value,那么就是把字典中的每一個值打印出來雁乡。
4. ?借用別人總結(jié)的描述:
set()創(chuàng)建一個無序不重復(fù)元素集第喳,可進行關(guān)系測試,刪除重復(fù)數(shù)據(jù)踱稍,還可以計算交集曲饱、差集、并集等珠月。
使用set()對得到的字典中的每一個值(字符串)創(chuàng)建成一個無序的不重復(fù)的元素集扩淀。
5. ?接下來分析,為什么set(invertigator.value())啤挎,能得到我想要的結(jié)果驻谆,invertigator.value()先得到了字典中的語言列表,然后通過set()得到一個去重的集合庆聘,最后通過for遍歷展示出來胜臊。
總結(jié):
使用各種函數(shù),可以事先了解伙判,對于錯誤可以慢慢分析象对。
參考:
百度知道
python編程:從入門到實踐(1)