最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

python實(shí)用的快捷語(yǔ)法技巧大全

 更新時(shí)間:2022年02月25日 10:22:59   作者:肥學(xué)  
初識(shí)Python語(yǔ)言,覺(jué)得python滿(mǎn)足了我上學(xué)時(shí)候?qū)幊陶Z(yǔ)言的所有要求,下面這篇文章主要給大家介紹了關(guān)于python實(shí)用的快捷語(yǔ)法技巧的相關(guān)資料,文中通過(guò)實(shí)例代碼介紹的非常詳細(xì),需要的朋友可以參考下

前言

你知道a**3是什么意思嗎?

你知道怎么打印模塊路徑嗎?

你知道reduce()函數(shù)怎么用和列表怎么拼接字符串嗎?

然而你可能全都知道

但是還是往下看看吧,可能會(huì)有你不知道的python小技巧學(xué)會(huì)它讓你的效率提升不止一倍?。。?/p>

in判斷

可以直接用來(lái)判斷某個(gè)變量是否在列表中

我們可以使用下面的方式來(lái)驗(yàn)證多個(gè)值:

if 7 in [1,3,5,7,9]:
  print("肥學(xué)")
答案:
肥學(xué)

就不用再用:

if m==1 or m==3 or m==5 or m==7:

四種翻轉(zhuǎn)字符串/列表的方式

翻轉(zhuǎn)列表本身
testList = [1, 3, 5]
testList.reverse()
print(testList)
#-> [5, 3, 1]
 在一個(gè)循環(huán)中翻轉(zhuǎn)并迭代輸出
 for element in reversed([1,3,5]):
    print(element)


#1-> 5

#2-> 3

#3-> 1
一行代碼翻轉(zhuǎn)字符串
"Test Python"[::-1]

#輸出 “nohtyP tseT”
更多例子:
>>> a=[1,2,3,4,5,6,7]
>>> b=(1,2,3,4,5,6,7)
>>> c='Let me show you a little thing'
>>> a[::-1]
[7, 6, 5, 4, 3, 2, 1]
>>> b[::-1]
(7, 6, 5, 4, 3, 2, 1)
>>> c[::-1]
'gniht elttil a uoy wohs em teL'
>>> a
[1, 2, 3, 4, 5, 6, 7]
>>> b
(1, 2, 3, 4, 5, 6, 7)
>>> c
'Let me show you a little thing'

>>> a.reverse()
>>> a
[7, 6, 5, 4, 3, 2, 1]

相對(duì)reverse而言,切片的方法不會(huì)改變列表的結(jié)構(gòu),所以這是在實(shí)際應(yīng)用中比較有用的一個(gè)技巧
使用切片翻轉(zhuǎn)列表

[1, 3, 5][::-1]

#輸出 [5,3,1]

平方數(shù)

a=5
a**2=25
a**3=125

進(jìn)制轉(zhuǎn)換

dec = input('10進(jìn)制數(shù)為:')
print("轉(zhuǎn)換為二進(jìn)制為:", bin(dec))
print("轉(zhuǎn)換為八進(jìn)制為:", oct(dec))
print("轉(zhuǎn)換為十六進(jìn)制為:", hex(dec))
 
string1 = '101010'
print('二進(jìn)制字符串轉(zhuǎn)換成十進(jìn)制數(shù)為:',int(string1,2))
string1 = '367'
print('八進(jìn)制字符串轉(zhuǎn)換成十進(jìn)制數(shù)為:',int(string1,8))
string3 = 'FFF'
print('十六進(jìn)制字符串轉(zhuǎn)換成十進(jìn)制數(shù)為:',int(string1,16))

將字符串中的小寫(xiě)字母轉(zhuǎn)為大寫(xiě)字母

str = "this is string example from runoob....wow!!!";

print ("str.upper() : ", str.upper())
以上實(shí)例輸出結(jié)果如下:

str.upper() :  THIS IS STRING EXAMPLE FROM RUNOOB....WOW!!!

一次性初始化多個(gè)變量

a,b,c,d=1,2,3,4
可以利用列表

List = [1,2,3]
x,y,z=List
print(x, y, z)
#-> 1 2 3

打印模塊路徑

import socket
print(socket)
#<module 'socket' from '/usr/lib/python2.7/socket.py'>

列表去重

list0 = [1, 2, 3, 2, 2, 5, 6, 5]
list0 = list(set(list0))
>>> list0
[1, 2, 3, 5, 6]

字典和列表推導(dǎo)

#列表
l=[[0 for i in range(4)] for i in range(4)]#生成二維列表
print(l)
#  [[0, 0, 0, 0], [0, 0, 0, 0], [0, 0, 0, 0], [0, 0, 0, 0]]
#字典推導(dǎo)
testDict = {i: i * i for i in xrange(10)}
testSet = {i * 2 for i in xrange(10)}

print(testSet)
print(testDict)

#set([0, 2, 4, 6, 8, 10, 12, 14, 16, 18])
#{0: 0, 1: 1, 2: 4, 3: 9, 4: 16, 5: 25, 6: 36, 7: 49, 8: 64, 9: 81}

拼接字符串

你可能見(jiàn)過(guò)這個(gè)拼接方法
a="i "
b="love "
c="you"
print(a+b+c)
看看這個(gè)
l=['a','b','c']
print(''join(l))
#以join左邊的字符做分割

循環(huán)枚舉索引

很方便的找到下標(biāo)和對(duì)應(yīng)元素
list = [10, 20, 30]
for i, value in enumerate(list):
    print(i, ': ', value)

#1-> 0 : 10
#2-> 1 : 20
#3-> 2 : 30

開(kāi)啟文件分享

Python 允許運(yùn)行一個(gè) HTTP 服務(wù)器來(lái)從根路徑共享文件,命令會(huì)在默認(rèn)端口也就是 8000 開(kāi)啟一個(gè)服務(wù)器,你可以將一個(gè)自定義的端口號(hào)以最后一個(gè)參數(shù)的方式傳遞到上面的命令中。下面是開(kāi)啟服務(wù)器的命令

python3 -m http.server

巧用else語(yǔ)句(重要)

python的else 子句不僅能在 if 語(yǔ)句中使用,還能在 for、while 和 try 等語(yǔ)句中使用,這個(gè)語(yǔ)言特性不是什么秘密,但卻沒(méi)有得到重視。

l=[1,2,3,4,5]
for i in l:
    if i=='6':
        print(666)
        break
else:
    print(999)

split

Python split() 通過(guò)指定分隔符對(duì)字符串進(jìn)行切片,如果參數(shù) num 有指定值,則僅分隔 num 個(gè)子字符串。

語(yǔ)法:

str.split(str="", num=string.count(str))

簡(jiǎn)化:

str.split("")

reduce

reduce把一個(gè)函數(shù)作用在一個(gè)序列[x1, x2, x3, ...]上,這個(gè)函數(shù)必須接收兩個(gè)參數(shù),reduce把結(jié)果繼續(xù)和序列的下一個(gè)元素做累積計(jì)算

簡(jiǎn)單例子:

>>> from functools import reduce
>>> def fn(x, y):
? ? ? ? return x * 10 + y

>>> reduce(fn, [1, 3, 5, 7, 9])
13579

我們把最近的知識(shí)結(jié)合起來(lái)做一道題

輸入一個(gè)int型整數(shù),按照從右向左的閱讀順序,返回一個(gè)不含重復(fù)數(shù)字的新的整數(shù)。

result=""
for i in input()[::-1]:
    if i not in result:
        result+=i
print(result)

sorted

>>> sorted([36, 5, -12, 9, -21])
[-21, -12, 5, 9, 36]
#可以接收一個(gè)key函數(shù)來(lái)實(shí)現(xiàn)自定義的排序,例如按絕對(duì)值大小排序:
>>> sorted([36, 5, -12, 9, -21], key=abs)
[5, 9, -12, -21, 36]

我們?cè)倏匆粋€(gè)字符串排序的例子:

>>> sorted(['bob', 'about', 'Zoo', 'Credit'])
['Credit', 'Zoo', 'about', 'bob']

我們給sorted傳入key函數(shù),即可實(shí)現(xiàn)忽略大小寫(xiě)的排序:

>>> sorted(['bob', 'about', 'Zoo', 'Credit'], key=str.lower)
['about', 'bob', 'Credit', 'Zoo']

要進(jìn)行反向排序,不必改動(dòng)key函數(shù),可以傳入第三個(gè)參數(shù)reverse=True:

>>> sorted(['bob', 'about', 'Zoo', 'Credit'], key=str.lower, reverse=True)
['Zoo', 'Credit', 'bob', 'about']

執(zhí)行一個(gè)字符串表達(dá)式,并返回表達(dá)式的值

>>>x = 7
>>> eval( '3 * x' )
21
>>> eval('pow(2,2)')
4
>>> eval('2 + 2')
4
>>> n=81
>>> eval("n + 4")
85

總結(jié)

到此這篇關(guān)于python實(shí)用的快捷語(yǔ)法技巧的文章就介紹到這了,更多相關(guān)python快捷語(yǔ)法技巧內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • plt.figure()參數(shù)使用詳解及運(yùn)行演示

    plt.figure()參數(shù)使用詳解及運(yùn)行演示

    這篇文章主要介紹了plt.figure()參數(shù)使用詳解及運(yùn)行演示,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2021-01-01
  • Pytorch之parameters的使用

    Pytorch之parameters的使用

    今天小編就為大家分享一篇Pytorch之parameters的使用,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧
    2019-12-12
  • 利用Python自動(dòng)化識(shí)別與刪除Excel表格空白行和列

    利用Python自動(dòng)化識(shí)別與刪除Excel表格空白行和列

    在處理Excel數(shù)據(jù)時(shí),經(jīng)常會(huì)遇到含有空白行和空白列的情況,本文將介紹如何利用Python來(lái)自動(dòng)化識(shí)別并刪除Excel文件中的空白行和列,從而確保數(shù)據(jù)集的整潔性,為后續(xù)的數(shù)據(jù)分析工作奠定堅(jiān)實(shí)的基礎(chǔ),需要的朋友可以參考下
    2024-05-05
  • python實(shí)現(xiàn)維吉尼亞加密法

    python實(shí)現(xiàn)維吉尼亞加密法

    這篇文章主要為大家詳細(xì)介紹了python實(shí)現(xiàn)維吉尼亞加密法,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2019-03-03
  • Django多對(duì)多ManyToManyField字段的使用

    Django多對(duì)多ManyToManyField字段的使用

    Django是一個(gè)支持多對(duì)多關(guān)系的Web框架,可以在模型中定義多對(duì)多關(guān)系,本文主要介紹了Django多對(duì)多ManyToManyField字段的使用,感興趣的可以了解一下
    2023-12-12
  • 深入理解Python中range和xrange的區(qū)別

    深入理解Python中range和xrange的區(qū)別

    這篇文章主要介紹了深入理解Python中range和xrange的區(qū)別,從用法和輸出等方便詳細(xì)介紹了之間的差別。
    2017-11-11
  • PyQt5之基礎(chǔ)框架解讀

    PyQt5之基礎(chǔ)框架解讀

    這篇文章主要介紹了PyQt5之基礎(chǔ)框架,具有很好的參考價(jià)值,希望對(duì)大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2024-02-02
  • Python實(shí)現(xiàn)圖算法、堆操作和并查集代碼實(shí)例

    Python實(shí)現(xiàn)圖算法、堆操作和并查集代碼實(shí)例

    這篇文章主要介紹了Python實(shí)現(xiàn)圖算法、堆操作和并查集代碼實(shí)例,圖算法、堆操作和并查集是計(jì)算機(jī)科學(xué)中常用的數(shù)據(jù)結(jié)構(gòu)和算法,它們?cè)诮鉀Q各種實(shí)際問(wèn)題中具有重要的應(yīng)用價(jià)值,需要的朋友可以參考下
    2023-08-08
  • Python實(shí)現(xiàn)合并與拆分多個(gè)PDF文檔中的指定頁(yè)

    Python實(shí)現(xiàn)合并與拆分多個(gè)PDF文檔中的指定頁(yè)

    這篇文章主要為大家詳細(xì)介紹了如何使用Python實(shí)現(xiàn)將多個(gè)PDF文檔中的指定頁(yè)合并生成新的PDF以及拆分PDF,感興趣的小伙伴可以參考一下
    2025-03-03
  • 在Django中預(yù)防CSRF攻擊的操作

    在Django中預(yù)防CSRF攻擊的操作

    這篇文章主要介紹了在Django中預(yù)防CSRF攻擊的操作,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧
    2020-03-03

最新評(píng)論

平山县| 浦东新区| 祥云县| 黑水县| 讷河市| 鹤岗市| 灵石县| 集安市| 藁城市| 威信县| 钦州市| 松滋市| 苏尼特右旗| 佛山市| 余干县| 瑞安市| 江源县| 临潭县| 通海县| 孝感市| 通河县| 黎平县| 竹山县| 岫岩| 琼海市| 镇康县| 安吉县| 都江堰市| 湖州市| 修文县| 和林格尔县| 永登县| 响水县| 隆德县| 邹平县| 灵石县| 资溪县| 紫金县| 庆城县| 牡丹江市| 合作市|