1. 程式人生 > >python基礎教程(一)

python基礎教程(一)

底層 技術分享 包括 什麽事 inpu 內容 很多 運算 下劃線

  之所以選擇py交易有以下幾點:1、python是膠水語言(跨平臺),2、python無所不能(除了底層),3、python編寫方便(notepad++等文本編輯器就能搞事情),4、滲透方面很多腳本都是py編寫的(而且google的網站也是py)


安裝與運行交互式解釋器

在絕大多數linux和 UNIX系統安裝中(包括Mac OS X),Python的解釋器就已經存在了。我們可以在提示符下輸入python命令進行驗證(作者環境ubuntu)

[email protected]:~$ python 
Python 2.7.3 (default, Sep 26 2012, 21:53:58) 
[GCC 4.7.2] on linux2 
Type "help", "copyright", "credits" or "license" for more information. 
>>> 

Ok ! 如果敲入python命令出現以上信息時,表明我們已經安裝了python 環境。

如果沒有安裝,在ubuntu /Debin linux ,那麽可以用下面的命令來安裝Python:

 $ apt-get install python

如果是window 下的安裝,以及linux 下下載源碼包的安裝,相信此類人問題很容易找到,這裏就不具體講解了。相信比第一次配置java環境要簡單的多。

輸入一下命令,看其是否可以正常運行。

>>> print "hello,world!" 
hello,world!

註意:如果要推出交互式解釋器,可以ctrl+D

算法是什麽?


在認真編程之前,先來說說什麽是計算機程序設計,簡單地說,計算機程序設計就是告訴計算機做什麽事。計算機可以做很多事,但它不會自己思考,需要我們告訴它具體細節,需要用計算機能夠理解的語言將算法告訴它。“算法”不過是“程序”或者“食譜”的另一種悅耳的說法----詳細描述如何做某事。

小蔥拌豆腐、豆腐、

首先,拿一些豆腐;(聲明一個變量)

然後加入小蔥在豆腐上。(兩個變量相加)

如果需要特殊辣味的豆腐。(考慮特定的條件)

煮熟---每10分鐘檢查一次。(重復運行此指令)


食譜和算法都包含一些要素(對象、物品),以及指令(語句)。“小蔥” 和“ 豆腐” 就是要素。指令包括“加入小蔥在豆腐上” 等。

數字和表達式:

交互式python解釋器可以當強大的計算器使用

技術分享
>>> 1-2 
-1 
>>> 1+2 
3 
>>> 32784*13 
426192 
>>> 1/2 
0
技術分享

什麽情況?1除2 不是應該等於0.5麽?怎麽是0呢? “/” 用於取整,不夠整除,肯定就是0了,試試浮點數

>>> 7/2 
3
>>> 1.0/2.0 
0.5

試試“%” 取余

技術分享
>>> 6 % 3 
0 
>>> 6 / 3 
2 
>>> 6 % 3 
0 
>>> 7 / 3 
2 
>>> 7 % 3 
1 
>>> 13 % 9 
4
>>> 0.75 % 0.5 
0.25
技術分享

看明白整除(/)與取余(%)的區別了吧。

6 / 3 剛好被2整除,所以余數(%)是0 , 13 / 9 只能帶得到1個9 ,余數就是4 。


下面再試試“ ** ” 冪運算(乘方)符

技術分享
>>> 2*2*2 
8 
>>> 2**3 
8 
>>> 2**6 
64 
>>> -3**2 
-9 
>>> (-3)**2 
9
技術分享

2的3次方可以用乘方符(**)表示,這樣就相當方便。

乘方符的比取反(一元減運算符)的優先級高,所以-3**2 等同於-(3**2),如果想計算(-3)**2 ,就需要顯式說明。

長整數


python可以處理非常大的數

>>> 100000000000000000000000 
100000000000000000000000L 

>>> 100000000000000000000000L 
100000000000000000000000L

普通整數在2 147 483 647 至 -2 147 483 647 之間,超出可以用長整形表示(L) ,我們也可以自己把整數轉換成長整型(輸入時在末尾加“L”)


變量


這個和其他編程語言沒有任何不同,如果你從沒接觸過程序,相信你也很容易理解。

技術分享
>>> x = 3 
>>> x*2 
6
>>> x = 5 
>>> x * 2 
1
技術分享

3 賦值給 x ,那麽x 變量現在的值就是3, x 乘以 2 結果是6 ,我又把5 賦值給了 x ,那麽與2相乘的結果肯定是10了。

定義變量規則:不能以數字開頭,可以包含字母、數字和下劃線。

語句


實際上最開始我們已經講了語句 print 就是打印輸出語句。

>>> 2*2 
4 

>>> print 2*2 
4

雖然結果一樣,上面的是表達式,下面的是語句。



獲取用戶輸入


有使用程序運行的過程需要用戶輸入,根據用戶輸入的內容繼續執行。

>>> input("輸入表達式:") 
輸入表達式:2*2 
4

程序的第二行等待用戶輸入,2*2 是由用戶隨便輸入的。下面看個更有意思點的。

技術分享
>>> x=input("x:") 
x:15 
>>> y=input("y:") 
y:32 
>>> print x*y 
480 
技術分享

哎~!別傻看了,和我一起敲才有意思呢! 我保證下面的你看不懂!

>>> if 1==2 : print one equals two 
... 
>>> if 1==1 : print one equals one 
... 
one equals one 

算了,告訴你吧,如果1等於(==)2,條件是假(就是不成立),print ‘one equals two‘ 將不被執行。

如果1等於(==)1,條件是真(成立),print ‘one equals ‘ 將被執行。

函數


前面介紹過使用冪運算符(**)來計算乘方。事實上,可以用函數來代替運算符,這個函數就是pow :

>>> 2**3
8

>>> pow(2,3)
8

函數就像可以用來實現特定功能的小程序一樣。python的很多函數都做很奇妙的事情。我們也可以自定義函數。因此,我們通常把pow等系統提供的函數稱為 內建函數。

技術分享
>>> 10+pow(2, 3*5)/3.0
10932.666666666666

>>> abs(-10)
10
>>> 18/13
1
>>> round(18.4/13.7)
1.0
技術分享

我們當熱可以使用函數調用和運算符創建更復雜的表達式; abs()函數可以得到數人絕對值,round函數則會把浮點數四舍五入為最接近的整數值。


模塊


可以把模塊想象成導入到python以增強其功能的擴展。需要使用特殊人命令import來導入模塊。

>>> import math
>>> math.floor(32.9)
32.0
>>> int(math.floor(32.9))
32

floor 函數的功能是取整。因為floor()函數屬於math模塊,所以在使用之前要先導入模塊(import math),然後按照(模塊.函數)的格式使用這個模塊的函數。

如果想把32.9轉換為整數(32)而不是浮點數(32.0),可以使用int函數。


在確定自己不會導入多個同名函數(從不同模塊導入)的情況下,你可能不希望在每次調用函數的時候,都要寫模塊的名字。那麽,可以使用import命令的另外一種形式:

>>> from math import sqrt
>>> sqrt(9)
3.0
>>> sqrt(8)
2.8284271247461903

sqrt()函數用於計算一個數的平方根。


保存並執行程序


本人在ubuntu 下進程學習,一個python命令就進入了交互式解釋器。交互式解釋器是python的強項之一,它讓實時檢驗解決方案並且體驗這門語言成為了現實。但是,在交互式解釋器裏面輸入的一切都會在它退出的時候丟失。我們真正想做的事情是編寫自己和他人都能運行的程序。

技術分享
下面我們創建一個文件
[email protected]:/hzh/python# touch hell.py
[email protected]:/hzh/python# ls
hell.py
[email protected]:/hzh/python# vi hell.py
輸入:
print “hello,world!”

保存退出。運行
[email protected]:/hzh/python# python hell.py 
hello,world!
技術分享

看!這就是一個可以一直運行的程序。 好吧!以上面的這種方式,在來做個有意思的程序。

技術分享
打開文件,輸入一下程序:
name=raw_input("what is your name?")
print "hello "+name+ " !"

保存退出,運行!
[email protected]:/hzh/python# python hell.py 
what is your name?huhu      // 這裏要求用戶輸入自己的名字
hello huhu !
技術分享


  python的入門教程推薦《python 基礎教程(第二版)》,零基礎的話推薦《零基礎學python》,進階推薦《python核心編程》,找不到資源的小夥伴可私信我!

python基礎教程(一)