Python學習二

今天繼續學習Python

研究了一下CentOS上運行,網上推薦使用Geany做IDE,下面把安裝和使用寫一下


1.使用終端,輸入命令yum install geany

2.選擇“應用程序”——“編程”——“Geany”

3.直接寫一個測試代碼用一下

print("Hello world")

然後保存爲hello.py

4.可以直接按F5運行


可是運行時總是提示我“無法找到虛擬終端xterm”,查來查去,原來geany是利用xterm運行的,而CentOS沒有自帶,所以我們需要安裝一個


5.使用終端,輸入命令yum install xterm,可能會提示你是否繼續,輸入y就行了


6.再次運行就OK了



————————繼續我們的學習——————————

函數,靜態語言(如:java)稱之爲方法

def hello():
    print("Hello")

定義了一個名爲“hello”的函數,其功能只有一個,就是打印出“Hello”。


之前用過“import random”來產生隨機數,說明Python支持像java包一樣的層級結構和調用。

#Filename: hello.py
def printHello():
    print("Hello")

我們先創建一個名爲“hello.py”的文件,其中包含一個名爲“printHello()”的方法來打印

#Filename: myMain.py
import hello
hello.printHello()

再寫一個名爲“myMain.py”的文件,先用“import”來導入“hello.py”文件,然後調用它的“printHello()”方法。

注意:myMain.py和hello.py兩個文件必須在同一個目錄下。


下面我們在“hello.py”文件中增加一個版本變量,Python通常每個文件都有版本變量,取名爲“__version__”(注意兩個下劃線),不是必須的但是約定俗成的。

#Filename: hello.py
def printHello():
  print("Hello")
  __version__ = '0.1'

當我執行“hello.__version__”時報錯,提示找不到“__version__”,仔細一看原來是__version__寫到“printHello()”函數中了,但是怎麼把它隔離出來呢?方法很狗血,居然是取消縮進。。。

#Filename: hello.py
def printHello():
    print("Hello")
__version__ = '0.1'#注意,沒有縮進!

經過一再測試,即使把“__version__”放在第一行,增加縮進也會造成報錯,由此可見:Python是根據縮進判斷語句塊的。


“hello.py”是自己寫的,那麼如果一個陌生的py文件,我想知道里面都有哪些函數怎麼做呢?

Python提供了“dir()”函數

import hello
print(dir(hello))

得到的結果是:

['__builtins__', '__cached__', '__doc__',
'__file__', '__initializing__', '__loader__',
 '__name__', '__package__', '__version__',
'printHello']

可見除了我們自己定義的“__version__”和“printHello”以爲,系統還自動創建了許多變量。


import 導入時需要犧牲性能作爲代價的,所以Python會產生一個“.pyc”文件,個人感覺就好像是.java文件編譯後產生.class文件一樣。


我們可以用del命令刪除“.pyc”中的方法和變量,如下:

import hello
print(dir(hello))

得到的結果是:

['__builtins__', '__cached__', '__doc__',
'__file__', '__initializing__', '__loader__',
 '__name__', '__package__', '__version__',
'printHello']

我們再用del刪除掉“__version__”

import hello
del hello.__version__
print(dir(hello))

得到的結果是:

['__builtins__', '__cached__', '__doc__',
'__file__', '__initializing__', '__loader__',
 '__name__', '__package__', 'printHello']


看!“__version__”消失了!不用擔心,刪除的是“hello.pyc”中內容,“hello.py”中內容原封不動,不信可以打開看一下。

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