成人午夜视频全免费观看高清-秋霞福利视频一区二区三区-国产精品久久久久电影小说-亚洲不卡区三一区三区一区

加槽函數(shù)python,槽函數(shù)聲明

【Python】基礎(chǔ)總結(jié)

input("提示性信息")

10余年的甘肅網(wǎng)站建設(shè)經(jīng)驗(yàn),針對(duì)設(shè)計(jì)、前端、開(kāi)發(fā)、售后、文案、推廣等六對(duì)一服務(wù),響應(yīng)快,48小時(shí)及時(shí)工作處理。全網(wǎng)營(yíng)銷(xiāo)推廣的優(yōu)勢(shì)是能夠根據(jù)用戶(hù)設(shè)備顯示端的尺寸不同,自動(dòng)調(diào)整甘肅建站的顯示方式,使網(wǎng)站能夠適用不同顯示終端,在瀏覽器中調(diào)整網(wǎng)站的寬度,無(wú)論在任何一種瀏覽器上瀏覽網(wǎng)站,都能展現(xiàn)優(yōu)雅布局與設(shè)計(jì),從而大程度地提升瀏覽體驗(yàn)。創(chuàng)新互聯(lián)從事“甘肅網(wǎng)站設(shè)計(jì)”,“甘肅網(wǎng)站推廣”以來(lái),每個(gè)客戶(hù)項(xiàng)目都認(rèn)真落實(shí)執(zhí)行。

如:

input("請(qǐng)輸入數(shù)字")

因?yàn)?Python 沒(méi)有特別人為規(guī)定數(shù)據(jù)類(lèi)型,數(shù)據(jù)類(lèi)型是由計(jì)算機(jī)進(jìn)行判定,所以我們 input() 輸入的數(shù)據(jù)均默認(rèn)作為字符串處理,而如果要輸入一些數(shù)字,著需要 eval() 評(píng)估函數(shù)對(duì)字符串進(jìn)行評(píng)估,化為語(yǔ)句(數(shù)字)。

print(...)

默認(rèn)空一行,如果想不空行,則

print(...., end = "")

特性:

進(jìn)制:

特性:

浮點(diǎn)數(shù)間運(yùn)算存在不確定尾數(shù),不是 bug

如:0.1+0.3 → 0.4

0.1+0.2 → 0.30000000000000004

這是由于在計(jì)算機(jī)中一切數(shù)據(jù)都是化為二進(jìn)制進(jìn)行存儲(chǔ)的,而有的浮點(diǎn)數(shù)并不能完全化為相等的二進(jìn)制數(shù),只能無(wú)限趨近于二進(jìn)制數(shù)。

如:0.1 →

解決方法:

四舍五入:

例如:z = 1.23e-4 + 5.6e+89j

z.real 獲得實(shí)部,z.imag 獲得虛部

三種類(lèi)型存在一種逐漸“擴(kuò)展”或“變寬”的關(guān)系:

整數(shù) → 浮點(diǎn)數(shù) → 復(fù)數(shù)

特點(diǎn):

字符串有 2 類(lèi)共 4 種表示方法:

擴(kuò)展:

使用[]獲取字符串中一個(gè)或多個(gè)字符

使用[M:N:K]根據(jù)步長(zhǎng)對(duì)字符串切片

{參數(shù)序號(hào):格式控制標(biāo)記}

右對(duì)齊

^ 居中對(duì)齊 | 槽設(shè)定的輸出寬度 | 數(shù)字的千位分隔符 | 浮點(diǎn)數(shù)小數(shù)精度 或 字符串最大輸出長(zhǎng)度 | 整數(shù)類(lèi)型

b , c , d , o , x , X

浮點(diǎn)數(shù)類(lèi)型

e , E , f , % |

填充、對(duì)齊、寬度這三個(gè)一組,例如:

"{0:=^20}".format("PYTHON")

→ '=======PYTHON======='

"{0:*20}".format("BIT")

→ '*****************BIT'

"{:10}".format("BIT")

'BIT '

剩下的三個(gè)一組,例如:

"{0:,.2f}".format(12345.6789)

→ '12,345.68'

"{0:b},{0:c},{0:d},{0:o},{0:x},{0:X}x".format(425)

→ '110101001,Σ,425,651,1a9,1A9'

"{0:e},{0:E},{0:f},{0:%}".format(3.14)

'3.140000e+00,3.140000E+00,3.140000,314.000000%'

↓CloseCode↓

使用 raise 語(yǔ)句拋出一個(gè)指定的異常。

raise [Exception [, args [, traceback]]]

緊湊形式:適用于簡(jiǎn)單表達(dá)式的二分支結(jié)構(gòu)

表達(dá)式1 if 條件 else 表達(dá)式2

例如:

↓CloseCode↓

↓CloseCode↓

↓CloseCode↓

↓CloseCode↓

例如:

↓CloseCode↓

運(yùn)行結(jié)果:

↓CloseCode↓

↓CloseCode↓

例如:

↓CloseCode↓

運(yùn)行結(jié)果:

↓CloseCode↓

↓CloseCode↓

例如:

↓CloseCode↓

運(yùn)行結(jié)果:

↓CloseCode↓

↓CloseCode↓

例如:

↓CloseCode↓

運(yùn)行結(jié)果:

↓CloseCode↓

↓CloseCode↓

例如:

↓CloseCode↓

運(yùn)行結(jié)果:

↓CloseCode↓

由條件控制的循環(huán)運(yùn)行方式

↓CloseCode↓

例如:

↓CloseCode↓

運(yùn)行結(jié)果:

↓CloseCode↓

↓CloseCode↓

↓CloseCode↓

例如:

↓CloseCode↓

運(yùn)行結(jié)果:

↓CloseCode↓

例如:

↓CloseCode↓

運(yùn)行結(jié)果:

↓CloseCode↓

↓CloseCode↓

可選參數(shù)例如:

↓CloseCode↓

運(yùn)行結(jié)果:

↓CloseCode↓

可變參數(shù)例如:

↓CloseCode↓

運(yùn)行結(jié)果:

↓CloseCode↓

在函數(shù)定義中,經(jīng)常會(huì)碰到 *args(arguments) 和作為參數(shù) **kwargs(keyword arguments)。

(事實(shí)上在函數(shù)中,和才是必要的,args 和 kwargs 可以用其他名稱(chēng)代替)

*args 是指不定數(shù)量的非鍵值對(duì)參數(shù)。

**kwargs 是指不定數(shù)量的鍵值對(duì)參數(shù)。

*args 作為作為元組匹配沒(méi)有指定參數(shù)名的參數(shù)。而 **kwargs 作為字典,匹配指定了參數(shù)名的參數(shù)。

*args 必須位于 **kwargs 之前。

args( 通常緊跟一個(gè)標(biāo)識(shí)符,你會(huì)看到a或者args都是標(biāo)識(shí)符)是python用于接收或者傳遞任意基于位置的參數(shù)的語(yǔ)法。當(dāng)你接收到一個(gè)用這種語(yǔ)法描敘參數(shù)時(shí)(比如你在函數(shù)def語(yǔ)句中對(duì)函數(shù)簽名使用了星號(hào)語(yǔ)法),python會(huì)將此標(biāo)識(shí)符綁定到一個(gè)元祖,該元祖包含了所有基于位置的隱士的接收到的參數(shù)。當(dāng)你用這種語(yǔ)法傳遞參數(shù)時(shí),標(biāo)識(shí)符可以被綁定到任何可迭代對(duì)象(事實(shí)上,它也可以是人和表達(dá)式,并不必須是一個(gè)標(biāo)識(shí)符),只要這個(gè)表達(dá)式的結(jié)果是一個(gè)可迭代的對(duì)象就行。

**kwds(標(biāo)識(shí)符可以是任意的,通常k或者kwds表示)是python用于接收或者傳遞任意基于位置的參數(shù)的語(yǔ)法。(python有時(shí)候會(huì)將命名參數(shù)稱(chēng)為關(guān)鍵字參數(shù),他們其實(shí)并不是關(guān)鍵字--只是用他們來(lái)給關(guān)鍵字命名,比如pass,for或者yield,還有很多,不幸的是,這種讓人疑惑的術(shù)語(yǔ)目前仍是這門(mén)語(yǔ)言極其文化根深蒂固的一個(gè)組成部分。)當(dāng)你接收到用這種語(yǔ)法描敘的一個(gè)參數(shù)時(shí)(比如你在函數(shù)的def語(yǔ)句中對(duì)函數(shù)簽名使用了雙星號(hào)語(yǔ)法)python會(huì)將標(biāo)識(shí)符綁定到一個(gè)字典,該字典包含了所有接收到的隱士的命名參數(shù)。當(dāng)你用這種語(yǔ)法傳遞參數(shù)時(shí),標(biāo)識(shí)符只能被綁定到字典(我ID號(hào)I它也可以是表達(dá)式,不一定是一個(gè)標(biāo)識(shí)符,只要這個(gè)表達(dá)式的結(jié)果是一個(gè)字典即可)。

當(dāng)你在定義或調(diào)用一個(gè)函數(shù)的時(shí)候,必須確保a和k在其他所有參數(shù)之后。如果這兩者同時(shí)出現(xiàn),要將k放在a之后。

lambda函數(shù)返回函數(shù)名作為結(jié)果

↓CloseCode↓

例如:

↓CloseCode↓

運(yùn)行結(jié)果:

↓CloseCode↓

謹(jǐn)慎使用lambda函數(shù)

Python需要disconnect信號(hào)嗎

在使用信號(hào)調(diào)用disconnect()方法斷開(kāi)信號(hào)和槽的連接時(shí),信號(hào)可以帶簽名也可不帶簽名,參數(shù)可以沒(méi)有也可以有一個(gè),這些組合情況下disconnect的處理是不同的,具體情況如下:

?1.PyQt5.14的官網(wǎng)上介紹說(shuō)如果參數(shù)為空,表示信號(hào)連接的所有槽都會(huì)斷開(kāi),這句話(huà)是有歧義的,只是斷開(kāi)所有與信號(hào)簽名匹配的槽,如果調(diào)用時(shí)信號(hào)不帶簽名,則默認(rèn)斷開(kāi)第一個(gè)簽名對(duì)應(yīng)的所有槽;

?2.如果斷開(kāi)時(shí)信號(hào)帶簽名,參數(shù)為槽函數(shù),但二者不匹配時(shí)則會(huì)引發(fā)異常;

?3.如果斷開(kāi)時(shí)信號(hào)帶簽名,參數(shù)為connection對(duì)象,斷開(kāi)的是與簽名匹配的連接信號(hào)和槽,不按參數(shù)進(jìn)行連接斷開(kāi);

?4.如果斷開(kāi)時(shí)信號(hào)不帶簽名,參數(shù)為connection對(duì)象,則按connection對(duì)象斷開(kāi)連接。

python里怎么添加sgn函數(shù)呢

自己寫(xiě)一個(gè)sgn函數(shù)。

def?sgn(x):

if?x0:

return?-1

elif?x==0:

return?0

else:

return?1

Python中冷門(mén)但非常好用的內(nèi)置函數(shù)

Python中有許多內(nèi)置函數(shù),不像print、len那么廣為人知,但它們的功能卻異常強(qiáng)大,用好了可以大大提高代碼效率,同時(shí)提升代碼的簡(jiǎn)潔度,增強(qiáng)可閱讀性

Counter

collections在python官方文檔中的解釋是High-performance container datatypes,直接的中文翻譯解釋高性能容量數(shù)據(jù)類(lèi)型。這個(gè)模塊實(shí)現(xiàn)了特定目標(biāo)的容器,以提供Python標(biāo)準(zhǔn)內(nèi)建容器 dict , list , set , 和 tuple 的替代選擇。在python3.10.1中它總共包含以下幾種數(shù)據(jù)類(lèi)型:

容器名簡(jiǎn)介

namedtuple() 創(chuàng)建命名元組子類(lèi)的工廠(chǎng)函數(shù)

deque 類(lèi)似列表(list)的容器,實(shí)現(xiàn)了在兩端快速添加(append)和彈出(pop)

ChainMap 類(lèi)似字典(dict)的容器類(lèi),將多個(gè)映射集合到一個(gè)視圖里面

Counter 字典的子類(lèi),提供了可哈希對(duì)象的計(jì)數(shù)功能

OrderedDict 字典的子類(lèi),保存了他們被添加的順序

defaultdict 字典的子類(lèi),提供了一個(gè)工廠(chǎng)函數(shù),為字典查詢(xún)提供一個(gè)默認(rèn)值

UserDict 封裝了字典對(duì)象,簡(jiǎn)化了字典子類(lèi)化

UserList 封裝了列表對(duì)象,簡(jiǎn)化了列表子類(lèi)化

UserString 封裝了字符串對(duì)象,簡(jiǎn)化了字符串子類(lèi)化

其中Counter中文意思是計(jì)數(shù)器,也就是我們常用于統(tǒng)計(jì)的一種數(shù)據(jù)類(lèi)型,在使用Counter之后可以讓我們的代碼更加簡(jiǎn)單易讀。Counter類(lèi)繼承dict類(lèi),所以它能使用dict類(lèi)里面的方法

舉例

#統(tǒng)計(jì)詞頻

fruits = ['apple', 'peach', 'apple', 'lemon', 'peach', 'peach']

result = {}

for fruit in fruits:

if not result.get(fruit):

result[fruit] = 1

else:

result[fruit] += 1

print(result)

#{'apple': 2, 'peach': 3, 'lemon': 1}下面我們看用Counter怎么實(shí)現(xiàn):

from collections import Counter

fruits = ['apple', 'peach', 'apple', 'lemon', 'peach', 'peach']

c = Counter(fruits)

print(dict(c))

#{'apple': 2, 'peach': 3, 'lemon': 1}顯然代碼更加簡(jiǎn)單了,也更容易閱讀和維護(hù)了。

elements()

返回一個(gè)迭代器,其中每個(gè)元素將重復(fù)出現(xiàn)計(jì)數(shù)值所指定次。元素會(huì)按首次出現(xiàn)的順序返回。如果一個(gè)元素的計(jì)數(shù)值小于1,elements()將會(huì)忽略它。

c = Counter(a=4, b=2, c=0, d=-2)

sorted(c.elements())

['a', 'a', 'a', 'a', 'b', 'b']most_common([n])

返回一個(gè)列表,其中包含n個(gè)最常見(jiàn)的元素及出現(xiàn)次數(shù),按常見(jiàn)程度由高到低排序。如果n被省略或?yàn)镹one,most_common()將返回計(jì)數(shù)器中的所有元素。計(jì)數(shù)值相等的元素按首次出現(xiàn)的順序排序:

Counter('abracadabra').most_common(3)

[('a', 5), ('b', 2), ('r', 2)]這兩個(gè)方法是Counter中最常用的方法,其他方法可以參考 python3.10.1官方文檔

實(shí)戰(zhàn)

Leetcode 1002.查找共用字符

給你一個(gè)字符串?dāng)?shù)組words,請(qǐng)你找出所有在words的每個(gè)字符串中都出現(xiàn)的共用字符(包括重復(fù)字符),并以數(shù)組形式返回。你可以按任意順序返回答案。

輸入:words = ["bella", "label", "roller"]

輸出:["e", "l", "l"]

輸入:words = ["cool", "lock", "cook"]

輸出:["c", "o"]看到統(tǒng)計(jì)字符,典型的可以用Counter完美解決。這道題是找出字符串列表里面每個(gè)元素都包含的字符,首先可以用Counter計(jì)算出每個(gè)元素每個(gè)字符出現(xiàn)的次數(shù),依次取交集最后得出所有元素共同存在的字符,然后利用elements輸出共用字符出現(xiàn)的次數(shù)

class Solution:

def commonChars(self, words: List[str]) - List[str]:

from collections import Counter

ans = Counter(words[0])

for i in words[1:]:

ans = Counter(i)

return list(ans.elements())提交一下,發(fā)現(xiàn)83個(gè)測(cè)試用例耗時(shí)48ms,速度還是不錯(cuò)的

sorted

在處理數(shù)據(jù)過(guò)程中,我們經(jīng)常會(huì)用到排序操作,比如將列表、字典、元組里面的元素正/倒排序。這時(shí)候就需要用到sorted(),它可以對(duì)任何可迭代對(duì)象進(jìn)行排序,并返回列表

對(duì)列表升序操作:

a = sorted([2, 4, 3, 7, 1, 9])

print(a)

# 輸出:[1, 2, 3, 4, 7, 9]對(duì)元組倒序操作:

sorted((4,1,9,6),reverse=True)

print(a)

# 輸出:[9, 6, 4, 1]使用參數(shù):key,根據(jù)自定義規(guī)則,按字符串長(zhǎng)度來(lái)排序:

fruits = ['apple', 'watermelon', 'pear', 'banana']

a = sorted(fruits, key = lambda x : len(x))

print(a)

# 輸出:['pear', 'apple', 'banana', 'watermelon']all

all() 函數(shù)用于判斷給定的可迭代參數(shù)iterable中的所有元素是否都為 TRUE,如果是返回 True,否則返回 False。元素除了是 0、空、None、False外都算True。注意:空元組、空列表返回值為T(mén)rue。

all(['a', 'b', 'c', 'd']) # 列表list,元素都不為空或0

True

all(['a', 'b', '', 'd']) # 列表list,存在一個(gè)為空的元素

False

all([0, 1,2, 3]) # 列表list,存在一個(gè)為0的元素

False

all(('a', 'b', 'c', 'd')) # 元組tuple,元素都不為空或0

True

all(('a', 'b', '', 'd')) # 元組tuple,存在一個(gè)為空的元素

False

all((0, 1, 2, 3)) # 元組tuple,存在一個(gè)為0的元素

False

all([]) # 空列表

True

all(()) # 空元組

Trueany函數(shù)正好和all函數(shù)相反:判斷一個(gè)tuple或者list是否全為空,0,F(xiàn)alse。如果全為空,0,F(xiàn)alse,則返回False;如果不全為空,則返回True。

F-strings

在python3.6.2版本中,PEP 498提出一種新型字符串格式化機(jī)制,被稱(chēng)為 “字符串插值” 或者更常見(jiàn)的一種稱(chēng)呼是F-strings,F(xiàn)-strings提供了一種明確且方便的方式將python表達(dá)式嵌入到字符串中來(lái)進(jìn)行格式化:

s1='Hello'

s2='World'

print(f'{s1} {s2}!')

# Hello World!在F-strings中我們也可以執(zhí)行函數(shù):

def power(x):

return x*x

x=4

print(f'{x} * {x} = {power(x)}')

# 4 * 4 = 16而且F-strings的運(yùn)行速度很快,比傳統(tǒng)的%-string和str.format()這兩種格式化方法都快得多,書(shū)寫(xiě)起來(lái)也更加簡(jiǎn)單。

本文主要講解了python幾種冷門(mén)但好用的函數(shù),更多內(nèi)容以后會(huì)陸陸續(xù)續(xù)更新~

文章題目:加槽函數(shù)python,槽函數(shù)聲明
文章起源:http://jinyejixie.com/article34/hsogpe.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供用戶(hù)體驗(yàn)、搜索引擎優(yōu)化建站公司、網(wǎng)站收錄虛擬主機(jī)、定制網(wǎng)站

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶(hù)投稿、用戶(hù)轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話(huà):028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來(lái)源: 創(chuàng)新互聯(lián)

微信小程序開(kāi)發(fā)
弥渡县| 台北市| 奇台县| 婺源县| 甘肃省| 施秉县| 柳州市| 仁化县| 德州市| 娄烦县| 泾川县| 南丹县| 天台县| 都兰县| 睢宁县| 临城县| 玉溪市| 元氏县| 乐业县| 紫阳县| 额济纳旗| 昌平区| 隆德县| 晋中市| 夹江县| 三穗县| 商都县| 沾化县| 天峨县| 曲松县| 拉萨市| 岑巩县| 汉源县| 烟台市| 济源市| 旌德县| 永修县| 阳高县| 台东市| 巩义市| 乌审旗|