首頁 > 軟體

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

2022-02-13 13:00:46

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 tannhello tan"
自然字串:
	在python裡面,如果我們的一串字串即使有跳脫符,也需要將他原樣保留,不進行任何處理,我們可以使用自然字串,就在字串前面加上r
e.g:
    #自然字串
    print "hello tannhello tan"
    print r"hello tannhello tan"
    輸出:
    hello tan
    hello tan
    hello tannhello tan	
字串的重複:
	如果要將一個字串重複的輸出,可以使用字串的重複運運算元,例如將hi重複輸出7次,可以使用"hi"*7
print "Hello Worldn"*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中一般使用#進行註釋,#是單行註釋

總結

本篇文章就到這裡了,希望能夠給你帶來幫助,也希望您能夠多多關注it145.com的更多內容!  


IT145.com E-mail:sddin#qq.com