Python的語法基礎你真的瞭解嗎

Python語法基礎

01-Python快速入門

U1-定義變量

直接定義 不用指明變量類型

e.g:

a=10

U2-判斷語句

#coding=utf-8
if s>=80:
	print("優")
elif s>=60:
	print("良")
else:
	print("差")

必須要有縮進!!

有中文要強調下utf-8

U3-循環

for i in range(0,100):
	print(i)
for i in range(0,100):
	print("Item {0}".format(i))
print("Item {0},{1}".format(i,"Hello Python"))

U4-定義函數

def sayHello():
	print("Hello World")
def max(a,b):
	if a>b:
		return a
	else:
		return b
sayHello()
print(max(2,3))

U5-面向對象

class Hello:

def sayHello(self):
	print("Hello Python")
h = Hello()
h.sayHello()

class Hello:

def _init_(self,name):
	self._name = name
def sayHello(self):
	print("Hello {0}".format(self._name))

#繼承Hello類,要執行父類的構造方法

class Hi(Hello):

def _init_(self,name):
	Hello._init_(self,name)
def sayHi(self):
	print("Hi {0}".format(self._name))
h = Hello("tan")
h.sayHello()
h1 = Hi("ther")
h1.sayHi()

U6-引入python文件

1)mylib.py:

class Hello:	
	def sayHello(self):
		print("Hello Python")

2)loadlib.py:

import mylib
h = mylib.Hello()
h.sayHello()
from mylib import Hello
h = Hell0()
h.sayHello()

02-python的三大優點、七大特色

U1-三大優點:

簡單、功能強大、支持面向對象

U2-七大特色:

大小寫嚴格區分

簡單、易學、支持面向對象

開源

庫非常豐富

跨平臺使用

解釋性語言

高級語言

03-python語法基礎

U1:Python常量與變量

常量:在程序運行的時候不會被更改的量,一旦綁定,就不能更改

Python中定義常量需要用對象的方法來創建

const.py(要放在lib文件下,lib主要放些模塊化的東西):

#class _const(object):
class ConstError(TypeError): pass
def __setatter__(self, name, value):
	if self.__dict__.has_key(name):
		raise self.ConstError, "Can't rebind const(%s)" % name
	self.__dict__[name] = value
def __delattr__(self, name):
	if name in self.__dict__:
		raise self.ConstError, "Can't unbind const(%s)" %name
	raise NameError, name
import sys
sys.modules[__name__] = _const()
#changliang.py:
import const
const.value=5
print const.value
const.value=6

變量:在程序運行時可以隨著程序的運行更改的量,即使賦值,也可以更改

i = 7
print i
i = 7
print i
i += 1
print i
i += 2
print i

U2:Python數與字符串

5種數:
    int 整數型
    long 長整數型,e.g: 878123l
    float 浮點型,e.g: 1.71235
    bool 佈爾型,e.g: True、False
    complex 復數型,e.g: 3+5j、2-7j
字符串:用引號引起來的字符集
引號的使用與區別:
    單引號裡面可以使用雙引號,並且可以輸出出來
    雙引號裡面不能使用雙引號,但是其裡面可以使用單引號,並且可以輸出出來
    三引號(三個單引號或者三個雙引號),三引號引起來的內容可以換行
轉義符
	\: 不會解析單引號裡面的單引號或者雙引號裡面的雙引號
	e.g: print 'It\'s a dog!'
	\n: 轉行
	e.g: print "hello tan\nhello tan"
自然字符串:
	在python裡面,如果我們的一串字符串即使有轉義符,也需要將他原樣保留,不進行任何處理,我們可以使用自然字符串,就在字符串前面加上r
e.g:
    #自然字符串
    print "hello tan\nhello tan"
    print r"hello tan\nhello tan"
    輸出:
    hello tan
    hello tan
    hello tan\nhello tan	
字符串的重復:
	如果要將一個字符串重復的輸出,可以使用字符串的重復運算符,例如將hi重復輸出7次,可以使用"hi"*7
print "Hello World\n"*7
子字符串:
	想取一個字符串中的子字符串出來,就要進行子字符串運算,子字符串的運算方法主要有兩種:1.索引運算法[] 2.切片運算法[:]
#子字符串
#索引運算符從0開始索引
#切片運算符[a:b]是指從第a下標開始到第b-1下標。同樣,從0開始索引
    s1 = "helloworld"
    s2 = s1[0]
    s3 = s1[7]
    s4 = s1[:7]
    s5 = s1[7:]
    s6 = s1[3:7]
    print s6

U3:Python數據類型

基本數據類型:數和字符串
列表
	在python中沒有數組的概念,python中跟數組最接近的概念就是列表和元組。列表就是用來存儲一連串元素的容器。列表用[]來表示,在列表中的元素是有序排列的,並且從0號元素開始。
    #列表
    drinks=["可口可樂","百事可樂","雪碧","芬達","美年達"]
    print drinks[1]
元組
	元組裡面的元素也是進行索引計算
	列表與元組的區別:1.列表裡面的元素的值是可以修改的,但是元組裡面的元素的值不能修改,隻能進行讀取操作 				   2.列表的符號是[],而元組的符號是()
    #元組
    drinks=("可口可樂","百事可樂","雪碧","芬達","美年達")
    print drinks[1]
    #不能修改否則報錯
    drinks[1] = "蘭芳園"
    print drinks[1]
集合
	python中集合主要有兩個功能,一個功能是建立關系,另一個功能是消除重復元素,集合的格式是:set(元素)
    #集合
    a=set("asfddseegsak")
    b=set("sfca")
    #交集
    c=a&b
    print c
    #並集
    d=a|b
    print d
    #差集
    e=a-b
    print e
    #去除重復元素
    new=set(a)
字典
	python中的字典也叫做關聯數組,用大括號{}括起來。格式:
    	zidian={'name':'tan','location':'china','like':'sleep'}。
    字典裡面包含瞭一整個事情,這一整個事情裡面包括瞭各種方面的詳細信息。比如上述的就包含瞭name、location、like這三個方面的具體信息。
    #字典
    d={"姓名":"tan","國傢":"中國"}
    print d["國傢"]
    #添加字典裡面的項目
    d["愛好"]="睡覺"
    print d["姓名"]
    print d["愛好"]

U4:Python標識符

命名規則:
    1.標識符第一個字符必須是字母或者下劃線,第一個字符不能出現數字或者其他的字符
    2.標識符除瞭第一個字符外,其他部分可以說字母或者下劃線或者數字
    3.標識符大小寫敏感
	python中的關鍵字是指系統中自帶的具備特定含義的標識符。
    常用的python關鍵字有:
        and 
        elif
        global
        or
        else
        pass
        break
        continue
        import
        class
        return
        for
        while
        print

U5:Python對象

什麼是python的對象?
	在python中一切皆為對象,內置的對象類型主要包括數組、字符串、列表、元組、字典、集合等
詳解pickle醃制
	在python中如果需要對一些對象進行持久性存儲,並且不丟失這個對象的類型與數據,則需要將這些對象進行序列化,序列化之後,需要使用的時候,我們再恢復變成之前的數據。序列化的這個過程,我們將其稱為pickle(醃制)
    #pickle醃制
    import pickle
    #dumps(object)將對象序列化
    lista=["one","two","three"]
    listb=pickle.dumps(lista)
    print listb
    #loads(string)將對象原樣恢復,並且對象類型也恢復為原來的格式
    listc=pickle.loads(listb)
    print listc
    #dump(object,file)將對象存儲到文件裡面序列化
    group1=("four","five","six")
    f1=file("1.pk1","wb")
    pickle.dump(group1,f1,True)
    f1.close()
    #load(object,file)將dump()存儲在文件裡面的數據恢復
    f2=file('1.pk1','rb')
    t=pickle.load(f2)
    print t
    f2.close()

U6:Python行與縮進

瞭解邏輯行與物理行:
	邏輯行主要是指一段代碼在意義上的行數,物理行是指實際中看到的行數
    #邏輯行與物理行
    #2個物理行
    print "123"
    print "345"
    #1個物理行,2個邏輯行
    print "123";print "345"
    #1個邏輯行,2個物理行
    print '''你好嗎
    你還好嗎'''
行中分號使用規則:
	在python中一個物理行一般可以包括多個邏輯行,在一個物理行中編寫多個邏輯行的時候,邏輯行與邏輯行之間用分號隔開。每個邏輯行的後面必須是有一個分號的,但是如果一個邏輯行占瞭一個物理行的最後,這個邏輯行可以省略分號。
行連接:
	在不使用三引號的情況下,還可以使用行連接去占取多行(即:將一個邏輯行寫在多個物理行中)
    #行連接
    print '殺青散\
    沒有解藥'
什麼是縮進?
	python有一個很不一樣的不同點,在python中邏輯行行首的空白是有規定的,邏輯行行首的空白不對,便會導致程序執行出錯
	報錯:There's an error in your program:unexpected indent
如何縮進
    1.一般情況下邏輯行行首不應該出現空白
    2.if語句的縮進方法
    3.while循環的縮進方法
    #縮進
    #一般情況下,行首不應該出現空白
    import sys
    #縮進的方法有兩種,一種按空格,另一種按tab鍵
    #if語句的縮進方法
    a=7
    if a>0:
        print "hi"
    #while循環的縮進方法
    a=0
    while a<7:
        print a
        a+=1
註釋:
	在python中一般使用#進行註釋,#是單行註釋

總結

本篇文章就到這裡瞭,希望能夠給你帶來幫助,也希望您能夠多多關註WalkonNet的更多內容!  

推薦閱讀: