0基礎7日入門Python

金羅老師發表於2018-11-22

Python是世界上最容易學的程式語言,從沒接觸過程式設計的人也能搞定。

從現在開始跟隨極客學院成長計劃,每天進取,怒讚自己。


給大家整理的這套 python 學習路線圖,按照此教程一步步的學習來,肯定會對 python 有更深刻的認識。或許可以喜歡上 python 這個易學,精簡,開源的語言。讓大家能真正開啟 python 的大門,進入這個領域。現在網際網路巨頭,都已經轉投到人工智慧領域,而人工智慧最好的程式語言就是 python ,未來前景顯而易見。


Python是一種動態解釋型的程式語言。Python可以在Windows、UNIX、MAC等多種作業系統上使用,也可以在Java、.NET開發平臺上使用。

python-logo


在這裡還是要推薦下我自己建的Python開發學習群:301056051,群裡都是學Python開發的,如果你正在學習Python ,小編歡迎你加入,大家都是軟體開發黨,不定期分享乾貨(只有Python軟體開發相關的),包括我自己整理的一份2018最新的Python進階資料和高階開發教程,歡迎進階中和進想深入Python的小夥伴

特點

1 Python使用C語言開發,但是Python不再有C語言中的指標等複雜的資料型別。

2 Python具有很強的物件導向特性,而且簡化了物件導向的實現。它消除了保護型別、抽象類、介面等物件導向的元素。

3 Python程式碼塊使用空格或製表符縮排的方式分隔程式碼。

4 Python僅有31個保留字,而且沒有分號、begin、end等標記。

5 Python是強型別語言,變數建立後會對應一種資料型別,出現在統一表示式中的不同型別的變數需要做型別轉換。

搭建開發環境

1 可以到www.python.org下載安裝包,然後通過configure、make、make install進行安裝。

2 也可以到www.activestate.com去下載ActivePython元件包。(ActivePython是對Python核心和常用模組的二進位制包裝,它是ActiveState公司釋出的Python開發環境。ActivePython使得Python的安裝更加容易,並且可以應用在各種作業系統上。ActivePython包含了一些常用的Python擴充套件,以及Windows環境的程式設計介面)。對ActivePython來說,如果你是windows使用者,下載msi包安裝即可;如果你是Unix使用者,下載tar.gz包直接解壓即可。

3 Python的IDE,包括PythonWin、Eclipse+PyDev外掛、Komodo、EditPlus

版本

python2與python3是目前主要的兩個版本。

如下兩種情況下,建議使用python2:

1 你無法完全控制你即將部署的環境時;

2 你需要使用一些特定的第三方包或擴充套件時;

python3是官方推薦的且是未來全力支援的版本,目前很多功能提升僅在python3版本上進行。

hello world

1 建立hello.py

2 編寫程式:

if __name__ == \'__main__\':
    print "hello word"

3 執行程式:

python ./hello.py

註釋

1 無論是行註釋還是段註釋,均以#加一個空格來註釋。

2 如果需要在程式碼中使用中文註釋,必須在python檔案的最前面加上如下注釋說明:

# -* - coding: UTF-8 -* -

3 如下注釋用於指定直譯器

#! /usr/bin/python

檔案型別】

1 Python的檔案型別分為3種,即原始碼、位元組程式碼和優化程式碼。這些都可以直接執行,不需要進行編譯或連線。

2 原始碼以.py為副檔名,由python來負責解釋;

3 原始檔經過編譯後生成副檔名為.pyc的檔案,即編譯過的位元組檔案。這種檔案不能使用文字編輯器修改。pyc檔案是和平臺無關的,可以在大部分作業系統上執行。如下語句可以用來產生pyc檔案:

import py_compile
py_compile.compile(‘hello.py’)

4 經過優化的原始檔會以.pyo為字尾,即優化程式碼。它也不能直接用文字編輯器修改,如下命令可用來生成pyo檔案:

python -O -m py_complie hello.py

變數

1 python中的變數不需要宣告,變數的賦值操作即是變數宣告和定義的過程。

2 python中一次新的賦值,將建立一個新的變數。即是變數的名稱相同,變數的標識並不相同。用id()函式可以獲取變數標識:

x = 1
print id(x)
x = 2
print id(x)

3 如果變數沒有賦值,則python認為該變數不存在

4 在函式之外定義的變數都可以稱為全域性變數。全域性變數可以被檔案內部的任何函式和外部檔案訪問。

5 全域性變數建議在檔案的開頭定義。

6 也可以把全域性變數放到一個專門的檔案中,然後通過import來引用:

gl.py檔案中內容如下:

_a = 1
_b = 2

use_global.py中引用全域性變數:

import gl
def fun():
  print gl._a
  print gl._b
fun()

常量

python中沒有提供定義常量的保留字。可以自己定義一個常量類來實現常量的功能。

class _const:
  class ConstError(TypeError): pass
    def __setattr__(self,name,vlaue):
      if self.__dict__.has_key(name):
        raise self.ConstError, “Can’t rebind const(%s)”%name
        self.__dict__[name]=value
import sys
sys.modules[__name__]=_const()

資料型別

1 python的數字型別分為整型、長整型、浮點型、布林型、複數型別。

2 python沒有字元型別

3 python內部沒有普通型別,任何型別都是物件。

4 如果需要檢視變數的型別,可以使用type類,該類可以返回變數的型別或建立一個新的型別。

5 python有3種表示字串型別的方式,即單引號、雙引號、三引號。單引號和雙引號的作用是相同的。python程式設計師更喜歡用單引號,C/Java程式設計師則習慣使用雙引號表示字串。三引號中可以輸入單引號、雙引號或換行等字元。

運算子和表示式

1 python不支援自增運算子和自減運算子。例如i++/i-是錯誤的,但i+=1是可以的。

2 1/2在python2.5之前會等於0.5,在python2.5之後會等於0。

3 不等於為!=或<>

4 等於用==表示

5 邏輯表示式中and表示邏輯與,or表示邏輯或,not表示邏輯非

控制語句】

1 條件語句:

if (表示式) :
    語句1
else :
    語句2

2 條件語句:

if (表示式) :
  語句1
elif (表示式) :
  語句2
…
elif (表示式) :
  語句n
else :
  語句m

3 條件巢狀:

if (表示式1) :
  if (表示式2) :
    語句1
  elif (表示式3) :
    語句2
  …
  else:
    語句3
elif (表示式n) :
   …
else :
   …

4 python本身沒有switch語句。

5 迴圈語句:

while(表示式) :
   …
else :
   …

6 迴圈語句:

for 變數 in 集合 :
   …
else :
   …

7 python不支援類似c的for(i=0;i<5;i++)這樣的迴圈語句,但可以藉助range模擬:

for x in range(0,5,2):
    print x

陣列相關

1 元組(tuple):python中一種內建的資料結構。元組由不同的元素組成,每個元素可以儲存不同型別的資料,如字串、數字甚至元素。元組是防寫的,即元組建立之後不能再修改。元組往往代表一行資料,而元組中的元素代表不同的資料項。可以把元組看做不可修改的陣列。建立元組示例如下:

tuple_name=(“apple”,”banana”,”grape”,”orange”)

2 列表(list):列表和元組相似,也由一組元素組成,列表可以實現新增、刪除和查詢操作,元素的值可以被修改。列表是傳統意義上的陣列。列表建立示例如下:

list=[“apple”,”banana”,”grage”,”orange”]

可以使用append方法來在尾部追加元素,使用remove來刪除元素。

3 字典(dictionary):由鍵-值對組成的集合,字典中的值通過鍵來引用。鍵和值之間用冒號隔開,鍵-值對之間用逗號隔開,並且被包含在一對花括號中。建立示例如下:

dict={“a”:”apple”, “b”:”banana”, “g”:”grage”, “o”:”orange”}

4 序列:序列是具有索引和切片能力的集合。元組、列表和字串都屬於序列。

函式相關

1 python程式由包(package)、模組(module)和函式組成。包是由一系列模組組成的集合。模組是處理某一類問題的函式和類的集合。

2 包就是一個完成特定任務的工具箱。

3 包必須含有一個__init__.py檔案,它用於標識當前資料夾是一個包。

4 python的程式是由一個個模組組成的。模組把一組相關的函式或程式碼組織到一個檔案中,一個檔案即是一個模組。模組由程式碼、函式和類組成。匯入模組使用import語句。

5 包的作用是實現程式的重用。

6 函式是一段可以重複多次呼叫的程式碼,函式定義示例如下:

def arithmetic(x,y,operator):
   result={
      “+”:x+y,
      “-“:x-y,
      “*”:x*y,
      “/”:x/y
   }

7 函式返回值可以用return來控制。

字串相關

1 格式化輸出:

format=”%s%d” % (str1,num)
print format

2 用+進行字串的合併:

str1=”hello”
str2=”world”
result=str1+str2

3 字串擷取可以通過索引/切片,也可以通過split函式。

4 通過切片擷取字串:

word=”world”
print word[0:3]

5 python使用==和!=來進行字串比較。如果比較的兩個變數的型別不相同,那麼結果必然為不同。

檔案處理

1 簡單處理檔案:

context=”hello,world”
f=file(“hello.txt”,’w’)
f.write(context);
f.close()

2 讀取檔案可以使用readline()函式、readlines()函式和read函式。

3 寫入檔案可以使用write()、writelines()函式

物件和類】

1 python用class保留字來定義一個類,類名的首字元要大寫。當程式設計師需要建立的型別不能用簡單型別來表示時,就需要定義類,然後利用定義的類建立物件。定義類示例:

class Fruit:
    def grow(self):
       print “Fruit grow”

2 當一個物件被建立後,包含了三方面的特性,即物件的控制程式碼、屬性和方法。建立物件的方法:

fruit = Fruit()
fruit.grow()

3 python沒有保護型別的修飾符

4 類的方法也分為公有方法和私有方法。私有函式不能被該類之外的函式呼叫,私有的方法也不能被外部的類或函式呼叫。

5 python使用函式"staticmethod()"或"@ staticmethod"指令的方法把普通的函式轉換為靜態方法。靜態方法相當於全域性函式。

6 python的建構函式名為__init__,解構函式名為__del__

7 繼承的使用方法:

class Apple(Fruit):
   def …

連線mysql

1 用MySQLdb模組操作MySQL資料庫非常方便。示例程式碼如下:

import os, sys
import MySQLdb
try:
    conn MySQLdb.connect(host=’localhost’,user=’root’,passwd=’’,db=’address’
except Exception,e:
    print e
    sys.exit()
cursor=conn.cursor()
sql=’insert into address(name, address) values(%s, %s)’
value=((“zhangsan”,”haidian”),(“lisi”,”haidian”))
try
    cursor.executemany(sql,values)
except Exception, e:
    print e
sql=”select * from address”
cursor.execute(sql)
data=cursor.fetchall()
if data
    for x in data:
        print x[0],x[1]
cursor.close()
conn.close()





1、 掌握基本的 Linux 系統操作;

2、 掌握 Python 基礎程式設計語法;

3 、建立起程式設計思維和麵向物件思想;

 

可解決的現實問題:

字串排序,切割,逆置;猜數字、飛機大戰遊戲;

 

市場價值:

具備程式設計思維,掌握 Python 基本語法,能開發出一些小遊戲

所涉及知識點:

 

 

Linux 基本命令

Python 語法基礎

Python 字串解析

Python 時間和日曆

Python 檔案操作

Python 物件導向

設計模式

異常

模組

專案實戰:飛機大戰



「人生苦短,快學Python」


來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/31561003/viewspace-2221153/,如需轉載,請註明出處,否則將追究法律責任。

相關文章