日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁 > 编程语言 > python >内容正文

python

python创建和控制的实体称为_Python语法基础

發(fā)布時間:2023/12/15 python 34 豆豆
生活随笔 收集整理的這篇文章主要介紹了 python创建和控制的实体称为_Python语法基础 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.

Python語法基礎(chǔ)

數(shù)據(jù)對象和組織

對現(xiàn)實世界實體和概念的抽象

簡單類型(表示):整數(shù)—int、浮點數(shù)—float、復(fù)數(shù)—complex、邏輯值—bool、字符串—str

容器類型(組織):列表—list、元組—tuple、集合—set、字典—dict

數(shù)據(jù)類型之間大都可以轉(zhuǎn)換

賦值和控制流

對現(xiàn)實世界處理和過程的抽象

運算語句(處理與暫存):表達(dá)式計算、函數(shù)調(diào)用、賦值

控制流語句(組織語句描述過程):循環(huán)、條件分支、順序

定義語句也用來組織語句,描述一個包含一系列處理過程的計算單元:函數(shù)定義、、類定義

python數(shù)據(jù)類型

整數(shù)int:不受大小限制

浮點數(shù)float:受到17位有效數(shù)字的限制

整數(shù)與浮點數(shù)有常見的運算包括加(+)、減(-)、乘(*)、除(/)、整除(//)、求余(%)、指數(shù)冪等

一些常用數(shù)學(xué)函數(shù)在math模塊中

import math

a=math.sqrt(4)

#a=2

復(fù)數(shù):python內(nèi)置對復(fù)數(shù)的計算

支持所有常見的復(fù)數(shù)計算

對復(fù)數(shù)處理的數(shù)學(xué)函數(shù)在模塊cmath中

import cmath

a=cmath.sqrt(1+2j)

#a的值為復(fù)數(shù)1+2i開根號

邏輯值(bool):邏輯值僅包括True/False兩個

配合if/while等語句做條件判斷

其他數(shù)據(jù)類型可以轉(zhuǎn)化為邏輯值,如0與非0等

bool(0)#False

bool(999)#True

字符串:python中字符串不能修改只能產(chǎn)生新的字符串

用單引號和雙引號都可以表示字符串

多行字符串用三個連續(xù)的單引號表示

特殊字符用轉(zhuǎn)移符號""表示

字符串基本操作:連接(+)、復(fù)制(*)、長度(len)、[start:end:step]用來切片(提取一部分)

高級操作:分割(split)、合并(join)、大小寫相關(guān)(upper/lower/swapcase)、替換字符(replace)等等

>>> 'a b c d'.split(' ')

['a', 'b', 'c', 'd']

>>> 'abc'.upper()

'ABC'

列表和元組

python中有幾種類型是一系列元素組成的序列,以整數(shù)作為索引

字符串str就是一種同類元素的序列

列表list和元組tuple則可以容納不同類型的元素,構(gòu)成序列

元組是不能更新的序列(字符串也是)

列表則可以刪除、添加、替換、重排序列中的元素

image

創(chuàng)建列表:[]或者list()

創(chuàng)建元組:()或者tuple()

用索引[n]獲取元素(列表可變)

+:連接列表/元組

*:復(fù)制n次,生成新列表/元組

len():元素個數(shù)

in:某個元素是否存在

[start:end:step]:切片

方法名稱

使用例子

說明

append

alist.append(item)

列表末尾添加元素

insert

alist.insert(i,item)

列表中i位置插入元素

pop

alist,pop()

刪除最后一個元素

sort

alsit.sort()

將表中元素排序

reverse

alist.reverse()

將列表元素反向排序

del

del.alist[i]

刪除第i個元素

indx

alist.index(item)

找到item的首次出現(xiàn)位置

count

alsit.count(item)

返回item在列表出現(xiàn)的次數(shù)

remove

alist.remove(item)

將item的首次出現(xiàn)刪除

集合set:集合是不重復(fù)元素的無序組合

用set()創(chuàng)建空集

用set()從其他序列轉(zhuǎn)化生成集合

集合的常見操作:

in:判斷元素是否屬于集合、

|,union():并集、

&,intersection():交集

-,difference():差集

^,symmetric_difference():異或

<=,=,>:子集,真子集,超集,真超集

字典dict:

字典是通過鍵值key來索引元素value,而不是像列表是通過連續(xù)的整數(shù)來索引

字典是可變類型

字典中元素value沒有順序,可以是任意類型

字典中的key可以是不可變類型(數(shù)值/字符串/元組)

python變量機(jī)制

引用數(shù)據(jù)對象

賦值語句a=0,實際上是創(chuàng)建了名為a的變量,然后指向數(shù)據(jù)對象“0”

所以變量可以隨時指向任何一個數(shù)據(jù)對象,如True,1.02等(這和靜態(tài)語言完全不同)

變量的類型隨著指向的數(shù)據(jù)對象類型改變而改變。

可變類型的變量引用情況

由變量的引用特性,可變類型的變量操作需要注意的是,多個變量通過賦值引用同一個可變類型對象時,通過任何一個變量改變了可變類型,其他變量也看到了改變

常用的連續(xù)序列生成器:range函數(shù)

range(n):從0到n-1的序列

range(start,end):從start到end-1的序列

range(start,end,step)

range函數(shù)返回range類型的對象,可以直接當(dāng)作序列使用,也可以轉(zhuǎn)換為list或者tuple等容器類型

建立大型數(shù)據(jù)結(jié)構(gòu)

嵌套列表:列表的元素是一些列表,可以通過alsit[i][j]來索引

字典元素可以是任意類型,所以也可以是字典

字典的鍵值可以是任意不可變類型。

>>> alist=[[1,2,3],[True,'ab']]

>>> alist[0][2]

3

>>> adict={'a':['1','2'],'b':[True,'sun']}

>>> adict['b'][0]

True

輸入和輸出:input/print函數(shù)

input(prompt):顯示提示信息prompt,輸入內(nèi)容以字符串形式返回

print(v1,v2,v3,...):打印各變量的值輸出,可以帶參數(shù)end(結(jié)尾)和sep(字符串之間)

格式化字符串:'%d %s' % (v1,v2)

運算語句:表達(dá)式、函數(shù)調(diào)用、賦值

各類型的數(shù)據(jù)對象,可以通過各種運算組織成復(fù)雜的表達(dá)式

調(diào)用函數(shù)或?qū)ο?#xff0c;也可以返回數(shù)據(jù),所有可調(diào)用的事物稱為callable(調(diào)用函數(shù)或?qū)ο?#xff0c;需要在其名稱后加圓括號,有參數(shù),寫在括號里,不加圓括號的函數(shù)或?qū)ο髢H表示自己,而不是調(diào)用)

將表達(dá)式或調(diào)用返回值傳遞給變量進(jìn)行引用,稱為賦值

控制流語句

條件if

if :

elif :#可多個elif

else:#只能一個

while循環(huán)

while :

break #跳出循環(huán)

continue #略過余下循環(huán)語句

else: #條件不滿足推出循環(huán),執(zhí)行下面代碼

for循環(huán)

for in :

break #跳出循環(huán)

continue #略過余下循環(huán)語句

else: #迭代完畢則執(zhí)行下面語句

推導(dǎo)式

可以用來生成列表、字典、集合的語句

[ for in if ]

{: for in if }

{ for in if }

生成式推導(dǎo)式

與推導(dǎo)式一樣語法(但是用的是圓括號)

( for in if )

返回一個生成器對象,也是可迭代對象,但不會立即產(chǎn)生全部元素,僅在要用到元素的時候才生成,可以極大節(jié)省內(nèi)存

例外處理Exception Handing

代碼運行可能出現(xiàn)的錯誤

語法錯誤:Syntax Error

除以0錯誤:ZeroDivionError

列表下標(biāo)越界:IndexError

類型錯誤:TypeError

錯誤會引起一些不必要的麻煩,如果希望掌控意外錯誤,就需要在可能出錯的地方設(shè)置陷阱捕捉錯誤,引入try,except方式

try: #若出錯,則執(zhí)行except后的語句

except: #處理錯誤代碼

else: #沒有出錯執(zhí)行下面的代碼

finally: #無論出錯否,都執(zhí)行的代碼

函數(shù)function

# def語句:

def ():

return

# 調(diào)用函數(shù):

()# 無返回值

v=()# 返回值賦值給變量v

定義函數(shù)的參數(shù):固定參數(shù)/可變參數(shù)

定義函數(shù)時,參數(shù)可以有兩種;一種是參數(shù)表中寫明了參數(shù)名key的參數(shù),固定了順序和數(shù)量

def func(key1,key2,key3=value3....):

一種是定義時還不知道會有多少參數(shù)傳入的可變參數(shù)

def func1(*args): #不帶key的多個參數(shù)

def func2(**kwargs): #帶key=val形式的多個參數(shù)

調(diào)用函數(shù)的參數(shù):位置參數(shù)/關(guān)鍵字參數(shù)

調(diào)用函數(shù)時,可以傳進(jìn)兩種參數(shù);一種是沒有名字的位置參數(shù)(會按前后順序?qū)?yīng)),一種是指定了key值的關(guān)鍵字參數(shù)

如果混用,位置參數(shù)必須在關(guān)鍵字參數(shù)前

面向?qū)ο?#xff1a;類的定義與調(diào)用

類用來實現(xiàn)抽象數(shù)據(jù)類型ADT,封裝實體的屬性和行為

#定義類

class :

def __init__(self,):

def (self,)

#調(diào)用類

obj=()

#返回一個對象實例,類方法中的self指這個對象實例

類定義中的特殊方法

在類定義中實現(xiàn)一些特殊方法,可以方便的使用一些python內(nèi)置操作(所有特殊方法以兩個下劃線開始結(jié)束)

__str__(self): 自動轉(zhuǎn)化為字符串

__add__(self,other): 使用+操作符

__mul__(self,other): 使用*操作符

__eq__(self,other): 使用==操作符

類的繼承機(jī)制

如果有兩個類具有“一般-特殊”的邏輯關(guān)系,那么特殊類就可以作為一般類的“子類”來定義,從“繼承”屬性和方法

class ():#可以繼承多個父類

def (self,...):

子類對象可以調(diào)用父類方法,除非這個方法在子類中重新定義了

總結(jié)

以上是生活随笔為你收集整理的python创建和控制的实体称为_Python语法基础的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯,歡迎將生活随笔推薦給好友。