Python挑戰遊戲( PythonChallenge)闖關之路Level- 5
時隔兩個月, 又重新回來寫部落格了
今天重新來做這個挑戰題目
首先入口地址:http://www.pythonchallenge.com/pc/def/peak.html
開啟來看, 沒錯,你沒有看錯,只有一副畫
然後畫的下面 有一句話 "pronounce it", 什麼鬼! 它的發音???
只看這個看不出來什麼意思.
那麼按照以往的經驗, 直接F12 看網頁原始碼吧
<html>
<head>
<title>peak hell</title>
<link rel="stylesheet" type="text/css" href="../style.css">
</head>
<body>
<center>
<img src="peakhell.jpg"/>
<br><font color="#c0c0ff">
pronounce it
<br>
<peakhell src="banner.p"/>
</body>
</html>
<!-- peak hell sounds familiar ? -->
這樣明顯看到有一個檔案 banner.p, 直覺認為需要開啟它 :http://www.pythonchallenge.com/pc/def/banner.p
這樣我們看到了一個亂碼的文字檔案
接著這個原始碼下面有一句提示“peak hell sounds familiar ”! 這一句話就比較重要了
前面說他的發音, 這裡提示說, 發音和“peak hell ” 類似, 再結合python的知識, 這一關應該是要用到 pickle 這個包了(我不會告訴你我是檢視別人的)!
好了,分析工作完成,將這個檔案內容下載到本地,然後執行解析程式如下(報告老闆,他是抄的):
#!/usr/bin/python
# coding:utf-8
import pickle
f=open('1.txt')
for line in pickle.load(f):
print ''.join([x[0] * x[1] for x in line])
f.close()
然後得到了下面的結果:
##### #####
#### ####
#### ####
#### ####
#### ####
#### ####
#### ####
#### ####
### #### ### ### ##### ### ##### ### ### ####
### ## #### ####### ## ### #### ####### #### ####### ### ### ####
### ### ##### #### ### #### ##### #### ##### #### ### ### ####
### #### #### ### ### #### #### #### #### ### #### ####
### #### #### ### #### #### #### #### ### ### ####
#### #### #### ## ### #### #### #### #### #### ### ####
#### #### #### ########## #### #### #### #### ############## ####
#### #### #### ### #### #### #### #### #### #### ####
#### #### #### #### ### #### #### #### #### #### ####
### #### #### #### ### #### #### #### #### ### ####
### ## #### #### ### #### #### #### #### #### ### ## ####
### ## #### #### ########### #### #### #### #### ### ## ####
### ###### ##### ## #### ###### ########### ##### ### ######
也就是說下一關的地址是:http://www.pythonchallenge.com/pc/def/channel.html
關於它本關更多的解決方案:http://wiki.pythonchallenge.com/index.php?title=Level4:Main_Page
那現在回頭來看一下 pickle 這個包是什麼意思
百度一下,得到這樣的答案
加工資料的,可以用來存取結構化資料。舉個例子:
一個字典a = {'name':'Tom','age':22},用pickle.dump存到本地檔案,所存資料的結構就是字典,而普通的file.write寫入檔案的是字串。讀取時,pickle.load返回的是一個字典,file.read返回的是一個字串。如下程式碼:
1
2
3
4
5
6
7
|
import pickle a = { 'name' : 'Tom' , 'age' : 22 } with open ( 'text.txt' , 'wb' ) as file : pickle.dump(a, file ) with open ( 'text.txt' , 'rb' ) as file2: b = pickle.load(file2) print ( type (b)) |
得到的b的型別是字典,b和a是等價的,也就是說pickle可以把字典、列表等結構化資料存到本地檔案,讀取後返回的還是字典、列表等結構化資料。而file.write、file.read存取的物件是字串。這個叫做持久化資料存貯
這個東東看著(bu)好(ming)高(jue)大(li)上的樣子,有木有!
python的pickle模組實現了基本的資料序列和反序列化。通過pickle模組的序列化操作我們能夠將程式中執行的物件資訊儲存到檔案中去,永久儲存;通過pickle模組的反序列化操作,我們能夠從檔案中建立上一次程式儲存的物件。一些更多pickle的知識:http://blog.csdn.net/qiqiyingse/article/details/77747777
本關小結:
本關收貨最大的一點其實就是了解到了 pickle這個模組.
讓我們發散思維一下, 現在密碼那麼多,總想把他找個地方全部記下來, 那麼使用pickle的dump方法將密碼存貯起來,
等到自己忘記了, 在找回來,起碼這種方式,被別人拿到,他也不知道怎麼破解!(程式設計師的思維,哈哈哈!)
相關文章
- 挑戰江湖闖關!《劍俠世界:起源》摘星樓闖關獨門秘籍
- 也許我是真的很想拿到那個遊戲機--致思否面試闖關挑戰遊戲面試
- PSRC雙11闖關挑戰開啟!翻倍獎勵+闖關獎勵High翻全場!
- SP!NG for Mac(益智闖關遊戲)Mac遊戲
- 【已結束】SegmentFault 思否面試闖關挑戰賽!面試
- 新熱潮之下,打造雲遊戲生態的加速闖關戰遊戲
- 【譯】闖入遊戲開發 #5:動畫遊戲開發動畫
- 【Winners】SegmentFault 思否面試闖關挑戰賽中獎名單來咯!面試
- 幽冥世界鏈遊/闖關/系統開發/合成卡牌遊戲/幽冥世界遊戲玩法遊戲
- 1024 程式設計師節,我做了個闖關小遊戲!程式設計師遊戲
- 戰術競技遊戲的吃雞之路遊戲
- 氣球塔防6 for Mac(BloonsTD6 塔防闖關遊戲)Mac遊戲
- 谷歌遊戲出海峰會:2020遊戲出海新挑戰和新機遇谷歌遊戲
- 【譯】闖入遊戲開發 #0-1:關於這部指南、遊戲引擎大清單遊戲開發遊戲引擎
- 平臺跳躍虐心闖關多人合作遊戲《魔導戰爭》今日正式在好遊快爆APP上線遊戲APP
- 快手發力小遊戲平臺,挑戰位元組?遊戲
- 遊戲的戰略(二)——選擇性的戰略與落地的挑戰遊戲
- 【譯】闖入遊戲開發 #6:音效遊戲開發
- NFT幽冥世界系統技術開發/智慧合約/闖關/遊戲遊戲
- 關於Python小遊戲程式Python遊戲
- 使用前端方式挑戰 Chrome 小恐龍遊戲高分前端Chrome遊戲
- 菜鳥直播挑戰:1小時創作多人遊戲遊戲
- 日本休閒遊戲市場的機會與挑戰遊戲
- 淺談巴西移動遊戲出海機遇與挑戰遊戲
- 《崩潰製造》挑戰你的平臺遊戲天分遊戲
- 遊戲機制設計:資源管理挑戰與遊戲中的AI設計遊戲AI
- 【譯】闖入遊戲開發 #4:美術遊戲開發
- 一局被調成噩夢難度的遊戲:“紅米闖關”遊戲
- 由雲入端:一場雲端計算巨頭的闖關遊戲遊戲
- 夫妻搭檔打造國產獨立遊戲 居然挑戰“全面戰爭”系列?遊戲
- AI晶片的長征之路:挑戰與機遇AI晶片
- DeepMind開源強化學習遊戲框架,25款線上遊戲等你來挑戰強化學習遊戲框架
- 助力遊戲夢!2019網易遊戲高校MINI-GAME挑戰賽報名開啟!遊戲GAM
- OCR迴圈:說說遊戲中的挑戰與體驗遊戲
- 從《不休的烏拉拉》看放置遊戲的前景與挑戰遊戲
- 遊戲與殘障:回首上個充滿挑戰的年代遊戲
- 闖關提交01
- 現代國風+橫板闖關,這樣的遊戲有沒有搞頭?遊戲
- 小瓶子大夢想 物理闖關遊戲《瓶子先生和他的夢想》發售遊戲