每個模組都有它的name,如果它是「main」,說明這個模組被使用者單獨執行,我們可以進行相應的恰當操作。
示例
#/usr/bin/python
# filename: mymodule.py
def sayhi()
print('hi, this is mymodule speaking.')
__version__ = '0.1'
# end of mymodule.py
在其他程式中引用此模組
import mymodule
mymodule.sayhi()
print('version', mymodule.__version__)
但如果採用
from mymodule import *
的形式匯入的話,會匯入sayhi這樣公用的名字,但是不會匯入version,因為它是以雙下劃線開始的。
import sys
dir(sys)
包是模組的資料夾,有乙個init.py的檔案,用來表明這個資料夾是特殊的,因為其包含有python模組。
第十章、資料結構
python有四種內建的資料結構——列表、元組、字典和集合。
list
用方括號定義。
元組用來將多樣的物件集合到一起。元組和列表相似,但是元組和字串一樣是不可變的。
元組通過圓括號中用逗號分割的專案定義。
鍵必須是唯一的。而且只能用不可變的物件(如字串)作為字典的鍵,而可變或不可變的物件都可做字典的值。
a =
鍵值對用冒號分割,各個對用逗號分割。
列表、元組、字串都是序列。
序列的主要特點是索引成員檢驗和索引操作符。索引操作符可以用來直接從序列中抓取乙個特定專案。
即為切片操作。
class定義
class
person:
def__init__
(self, name):
self.name = name
defsayhi
(self):
print('hello, my name is', self.name)
p = person('swaroop')
p.sayhi()
read、readline、write
使用該模組可以將任意物件儲存在檔案中,之後還可以將其完整地取出來。這稱之為持久地儲存物件。
import pickle
shoplistflle = 'shoplist.data'
f = open(shoplistfile, 'wb')
pickle.dump(shoplist, f)
f.close()
del shoplist
f = open(shoplistfile, 'rb')
storedlist = pickle.load(f)
print(storedlist)
使用try…except語句處理異常。
可以使用raise語句引發異常。
在乙個try塊下,可以同時使用except從句和finally塊。若要同時使用,需要乙個嵌入另乙個。
with
open('poem.txt') as f:
forline
in f:
print(line, end='')
用with open能使得在結束的時候自動關閉檔案。
用來得到除錯資訊
def
make_repeater
(n):
return
lambda s:s*n
twice = make_repeater(2)
print(twice('word'))
print(twice(5))
exec語句用來執行儲存在字串或檔案中的python語句。
>>> exec('print("hello world")')
hello world
eval語句用來執行儲存在字串中的python語句
>>> eval('2*3')
6
assert語句用來說明某個條件使真的。
未完待續。。。
a byte of python初學筆記 001
1.1 特色面向高層 具有可移植性 自源 執行程式而不需將之編譯成二進位制 原理 原始碼 直譯器 位元組碼 物件導向 可 被 鑲嵌 3.0對於python,程式 指令碼 或者軟體指的是同一件事 3.1執行py python.exe是直譯器 3.2原始檔 後是注釋。再linux unix,起於sheb...
如何讀書,讀書方法
終身學習者必看!系統性梳理並解決你的讀書難題 瀟灑一辣 思維導圖 讀書修煉的第0步,就是要有明確的目的,不能為了學習而學習,應當為了學 而學習 大體目錄 識字境速讀境 精讀境貫通境 識字境就不寫了,能看懂這些字就成 速讀境和精讀境都是為貫通境而服務的,如果不理解貫通境的意義,是不可能真正發揮速讀境的...
讀書時間 2011 11 16 讀書時間
1.把脈vc chap 3 mfc與atl atl中無法使用cwnd chap 4 賦值與初始化的區別 前者呼叫operator 後者呼叫constructor 2.以前關於wtl的筆記 3.wtl例子分析 my2ndwtl70win my2ndwtl70win.cpp hellowtl70win2...