有關(guān)Python程序開發(fā)問題進行學(xué)習(xí)解答
過長時間學(xué)習(xí)Python程序開發(fā),于是和大家分享一下,看完本文你肯定有不少收獲,希望本文能教會你更多東西。學(xué)習(xí)Python程序開發(fā)時,你可能會遇到Python程序開發(fā)問題,在這里拿出來和大家分享一下。
由于個人對ubuntu的偏愛和熟悉,下面的開發(fā)過程無論主機環(huán)境還是moblin的平臺都采用的是ubuntu,然而,moblin 2.0貌似不再使用ubuntu,而僅支持fedora,不知何故。啟動MIC,Platform選擇memlow-lpia-ubuntu-hardy,target選擇ububtu-mobile,自動生成即可,等待的時間那叫一個長啊。
這也是工具的好與不好,之前敲命令,交叉編譯了Gnome Mobile框架的幾乎所有模塊,吃盡了苦頭,但不至于閑著沒事干;而由工具自動生成呢,清閑了很多,也不太關(guān)心編譯的細節(jié)。
就是盼著趕快編完,好做測試。接下來,生成Image文件,選擇Live RW USB。此時以為大功告成了,點擊Launch VM,沒有反應(yīng)...郁悶阿。Google,運行KVM需要CPU支持Intel VT才行,手頭又沒有MID,那就試試Qemu吧。
把編成的映象文件(Launch VM時選擇的文件)直接扔給Qemu,結(jié)果“checking device /dev/sda for installation source...”,問題出在哪呢。把映象文件掛到本地也沒有看出個所以然,其實,Qemu無法直接跑出畫面也在預(yù)料之中(此處Qemu的使用可能存在問題 qemu -hda moblin.img)。
由于內(nèi)核、文件系統(tǒng)由MIC生成,使得很多處理的細節(jié)無法得知,但編譯的文件總是存在的吧,我想完全可以根據(jù)MIC生成的文件來創(chuàng)建Qemu仿真所需的文件。linux啟動過程一切順利,提示輸入用戶名和密碼...再次掛載根文件系統(tǒng)1G.img,刪掉shadow?還是用文明一點的辦法吧,拷貝本機/etc/shadow到${Mount Dir}/etc。
再次啟動,得到了shell,可還是沒有圖形界面(如果MID需要手工啟動X,感覺有點多此一舉,問題可能出在配置上,沒有深究,跑起X再說)。沒有/etc/init.d/gdm,還是startx吧,令人沮喪的事再次發(fā)生,“(EE):no valid modes found”。沒辦法,只能再次掛載根文件系統(tǒng)。
添加Modes “800x480”(僅僅是我添加的模式,不知是否支持其他)??偹阋姷疆嬅媪?,也許是費了些周折的緣故吧,覺得Moblin的界面還是很漂亮的。使用同樣的方法,可以用Qemu對其他Platform進行仿真(沒有一一驗證,測試過netbook-lpia-moblin2)。
之所以選擇Python,首先,易于移植,Python解釋器把源代碼轉(zhuǎn)換成字節(jié)碼,然后再把它翻譯成機器語言并運行。不需要擔心如何編譯程序,如何連接到正確的庫等等,只需要把Python程序拷貝到目標機上,它就可以工作了;
其次,最近一直在寫Python,覺得它可以快速地把想法變成現(xiàn)實,就懶得用C了;***呢,Python是一種極其流行的解釋性語言,我們可以看到在Gnome Mobile的原型中也保留了Python的編程接口。
- class Category(models.Model):
- id = models.AutoField('id', primary_key=True)
- name = models.CharField(maxlength=50)
- code = models.CharField(maxlength=50)
- parentCategory = models.ForeignKey('self', 'id', null=True)
- enable = models.BooleanField()
- def __str__(self):
- return self.name
- class Admin:
- list_display = ('id', 'name', 'code', 'parentCategory')
Python提供了系統(tǒng)調(diào)用、線程、GTK等模塊,可以利用它搭建原型,驗證想法的可行性,當然,它也可以極其方便的應(yīng)用到Moblin平臺的開發(fā)。開發(fā)應(yīng)用程序之前,配置環(huán)境必不可少,毫無疑問,使用的工具是 Moblin Image Creator,需要保證所需的工具以及庫已經(jīng)安裝。
包括Python,核心的模塊(python-dbus python-gtk2 python-hildon),由于之前選擇的平臺是ubuntu,只需要用apt-get就可以輕松的安裝這些包了。此時,在moblin上開發(fā)Python的環(huán)境以及基本建成了。接下來,在桌面上創(chuàng)建圖標,并啟動相應(yīng)的Python程序,毫無疑問是Hello World。
【編輯推薦】