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

歡迎訪(fǎng)問(wèn) 生活随笔!

生活随笔

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

python

python3.6基础知识_python的基础知识

發(fā)布時(shí)間:2023/12/4 python 33 豆豆
生活随笔 收集整理的這篇文章主要介紹了 python3.6基础知识_python的基础知识 小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

安裝

https://www.python.org/ftp/python/3.6.3/python-3.6.3-amd64.exe

輸入輸出

print('text')

'hi,我是%s,我%d歲了'%('Wang',20)

print('abc','def','ghi')

inputName = input('輸出信息')? inputName類(lèi)型為str

注釋

#

數(shù)據(jù)類(lèi)型

不變對(duì)象不需聲明

整數(shù)

浮點(diǎn)數(shù)

字符串

布爾(TrueFalse and or not運(yùn)算)

空值None

變量

可變對(duì)象需聲明

列表(數(shù)組)

len(list)獲取長(zhǎng)度

list[-n]獲取倒數(shù)第n個(gè)

list.append('world')末尾添加

list.insert(index,'hello')指定index插入

list.pop()刪除末尾? pop(index)刪除index

list.sort()

元組

tuple = (1,2,3)

一旦定義不可改變

字典

dict = {'wang':1,'li':2,'qun':3}

dict['add'] = 4

'add' in dict 輸出true

dict.get('add','notfound')找不到輸出notfound

集合

s =set([a,b,c])print(s)

{a,b,c}

接收一個(gè)list

集合不可重復(fù),確定,無(wú)序,互異

s.set(key)添加

s.remove(key)刪除

條件

if用法

if i<5:print('Hello World')elif i>10:print('Hello World')else:print('Hello World')

循環(huán)

for循環(huán)

list =[a,b,c]for i inlist:print(i)

i依次為a,b,c

while循環(huán)

while i<5:print(i++)

i=i+1

break

continue

函數(shù)

def fun(a,b,c=3):print(a+b+c)

fun(4,5)

fun(4,5,6)

需傳入2到3個(gè)參數(shù),否則為錯(cuò)

默認(rèn)參數(shù)必須指向固定,否則會(huì)記錄上一次的結(jié)果

def fun(*number):

#可變參數(shù),number變?yōu)閿?shù)組

參數(shù)組合

順序:必選參數(shù),默認(rèn)參數(shù),可變參數(shù),命名關(guān)鍵字參數(shù),關(guān)鍵字參數(shù)

*args是可變參數(shù),接受一個(gè)tuple, **kw是關(guān)鍵字參數(shù),接受一個(gè)dict

關(guān)鍵字參數(shù)需要加*作為分隔符

def f1(a, b, c=0, *args, **kw):

def f2(a, b, c=0, *, d, **kw):

高級(jí)特性

切片(list,tuple)

L[m:n]左閉右開(kāi)

L[-m]倒數(shù)第m個(gè)元素

L[:n]默認(rèn)為0開(kāi)始取

L[m:]取到最后(包含)

L[m:n:5]每隔五個(gè)取一個(gè)

迭代

對(duì)于數(shù)組 for i ,value in enumerate(list) (迭代index和value)

對(duì)于字典 for k in dict:(迭代key) for v in dict。values():(迭代value)? for k,v in dict.items():(迭代key,value)

fromcollections import Iterable

#isinstance(unknown,Iterable)

#判斷是不是迭代器對(duì)象,True or False

列表生成式

[x*x for x in range(1,10) if x>4]? 自動(dòng)生成,{}等都可以

生成器

#[x for x in range(1,5)]變成(x for ix in range(1,5))生成器

#保存算法運(yùn)算規(guī)律,需要的時(shí)候計(jì)算出來(lái)

#next(函數(shù)())即可一步一步調(diào)用

#最后報(bào)StopIteration錯(cuò)誤

包含yield的函數(shù)是generator

從上次yield之后的語(yǔ)句開(kāi)始執(zhí)行

#通過(guò)捕獲StopIteration錯(cuò)誤拿到return值

生成器不能像函數(shù)一樣執(zhí)行,可以通過(guò)next()獲取一個(gè),通過(guò)for獲取所有

迭代器

Iterable? ?for皆可

Iterator? ?iter(iterable)

高階函數(shù)

可以接受函數(shù)體作為參數(shù),與js類(lèi)似

r=map(f,[1,2,3]) r=reduce(f,[1,2,3]) r=filter(f,[1,2,3])

sorted([1,2,3],key=abs,reverse=True)#數(shù)組 規(guī)則 反向

閉包

函數(shù)體作為返回值

調(diào)用時(shí)才執(zhí)行

匿名函數(shù)

f=lambda x,y:x*y

裝飾器

@function

def func():

pass

@修飾符,將'函數(shù)名'作為@函數(shù)參數(shù),生成的結(jié)果代替原來(lái)的函數(shù),并執(zhí)行。(所以裝飾器中必須返回'函數(shù)名')

函數(shù)__name__屬性,可以獲取函數(shù)名

@classmethod可傳cls,@staticmethod都是靜態(tài)

類(lèi)和實(shí)例

__init__構(gòu)造函數(shù),可以引用類(lèi)的實(shí)例傳值賦屬性

class Student(object):

__init__(self,a):

print(a)

A=Student('helolo world')

_開(kāi)頭的變量或者函數(shù)不應(yīng)該訪(fǎng)問(wèn),但是沒(méi)有機(jī)制限制,__開(kāi)頭的不可被訪(fǎng)問(wèn),因?yàn)閷?duì)外變成了‘_類(lèi)名__屬性‘

可以通過(guò)內(nèi)置函數(shù)給私有量設(shè)置查,改等

class Dog(Animal):#繼承

type()判斷類(lèi)型? types模塊types.FunctionType判斷函數(shù)類(lèi)型

instance()同上,另外還可以判斷是否是繼承而來(lái)的。

dir()列出方法的所有屬性和方法

getattr(),setattr(),hasattr()

面向?qū)ο?/p>

__slots__=('name','year')#tuple

表示可以定義的屬性(其余是不可以定義的)

針對(duì)當(dāng)前實(shí)例,對(duì)子類(lèi)無(wú)用

子類(lèi)定義__slots__才可以有效繼承父親的

@property屬性限制

class Student(object):

@property

def score(self):returnself._store

@property.setter

def score(self,value):

#限制條件

self._store=value

s=Student()

s.store=99

錯(cuò)誤處理

try except finally

except Exception as e:

IO處理

f=open('文件名',‘r’)#讀方式打開(kāi)文件? 二進(jìn)制rb? 寫(xiě)w或wb

str=f.read()#一次讀取所有,可用數(shù)字限定最多讀取個(gè)字節(jié)(readline()一行,readlines()返回行列表)

f.close()

with open() as f:

f.read()#自動(dòng)保持關(guān)閉,不用close()

StringIO和BytesIO

fromio import StringIO

f=StringIO()

f.write('hello')

f.getvalue()#獲取寫(xiě)入的

#在內(nèi)存中讀寫(xiě)。類(lèi)似文本操作fromio import ByteIO

f=ByteIO()

f.write('hello'.encode('utf-8'))

f.close()

#必須關(guān)閉,防止丟失

os模塊

json模塊

import json

json_str="{'age':20,"score":88,"name":"Bob"}"json.loads(json_str)

#轉(zhuǎn)化為json(dict)格式

:結(jié)尾的以縮進(jìn)(四個(gè)空格)作為代碼塊

python大小寫(xiě)敏感

數(shù)據(jù)類(lèi)型:整數(shù)浮點(diǎn)數(shù)(科學(xué)計(jì)數(shù)法)字符串(r''表示不轉(zhuǎn)義\轉(zhuǎn)義\n換行\(zhòng)t制表)布爾值TrueFalse

/除//地板除%取余

對(duì)數(shù)大小無(wú)限制,超出即無(wú)窮大

Unicode Utf-8

ord('中')表示獲取數(shù)字表示

chr(數(shù)字)轉(zhuǎn)換對(duì)應(yīng)的字

isinstance(unknown,type)判斷類(lèi)型

pass補(bǔ)全格式,不做任何操作

in,not in

sys.path導(dǎo)入模塊查找的路徑

enumerate()將數(shù)組轉(zhuǎn)換為索引對(duì),用于遍歷取索引

python的set

a=[1,3,5]

b=[1,2,3]

#并集,set(a).union(b)set(a) | set(b) [1,2,3,5]

#交集,set(a).intersection(b)set(a) & set(b) [3]

#差集,set(a).difference(b)set(a)-set(b) [5]

#對(duì)稱(chēng)差集,set(a).symmetric_difference(b)set(a) ^ set(b) [5,2]

總結(jié)

以上是生活随笔為你收集整理的python3.6基础知识_python的基础知识的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。

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