小甲魚Python學(xué)習(xí)筆記(一)

變量和字符串

變量定義形式:

交換兩個變量(簡便):

Alt + p 重復(fù)上一次的命令

當(dāng)字符串的內(nèi)容存在單(雙)引號時,可以用雙(單)引號將其引起來,也可以用轉(zhuǎn)義字符反斜杠 \ 將字符串中的引號轉(zhuǎn)義


當(dāng)需要轉(zhuǎn)義的字符太多時,可以使用原始字符串:在字符串前面添加 r

當(dāng)輸入多行字符串時,可以在一行的末尾加上反斜杠 \ 表示下一行繼續(xù)輸入


也可以用三引號 """輸入多行字符串,就無需在行末加反斜杠 \ ,三引號需要成對使用

數(shù)字

x//y 地板除,x除以y向下取整(取小于目標(biāo)結(jié)果的最大整數(shù))


pow(a,b,c) a的b次方的結(jié)果對c取余

布爾

bool() 可以直接計算表達(dá)式的布爾值
所有結(jié)果為false的情況:



Python里的 and or 都遵從短路邏輯

運(yùn)算符優(yōu)先級(從上至下優(yōu)先級變高):

分支與循環(huán)

條件語句縮寫形式:
條件成立時執(zhí)行的語句 if condition else 條件不成立時執(zhí)行的語句

while循環(huán)可以和else語句一起使用,表示只有while循環(huán)的內(nèi)容執(zhí)行完畢才會執(zhí)行else里面的語句,如果是因為break語句退出了while循環(huán),則不會執(zhí)行else里面的語句


for 循環(huán) 語法:

for循環(huán)常與range()函數(shù)搭配使用,range()函數(shù)有三種常用形式:

  • range(stop)
    生成從0開始的整數(shù)數(shù)列,作為可迭代對象
  • range(start, stop)
    生成從start到stop-1的整數(shù)數(shù)列(左閉右開),作為可迭代對象
  • range(start, stop, step)
    生成從start到stop-1的整數(shù)數(shù)列(左閉右開),作為可迭代對象,每次迭代步長為step


循環(huán)嵌套
找出10以內(nèi)的素數(shù):

列表

Python的列表可以包含不同的數(shù)據(jù)類型
num = [1, 2, 3, 4, 5, "six"]
想訪問列表最后一個元素時:

以此類推,倒數(shù)第二個元素的索引可以是 -2

列表切片

列表切片是處理列表的部分元素,也就是把整個列表切開
列表切片也可以搭配步長
num[::-1] 步長為-1,可以倒序輸出

添加元素
  • 列表可以使用 append() 方法添加一個元素,
  • 也可以使用 extend() 方法添加一組元素,注意extend()方法的參數(shù)必須是一個可迭代對象

新的內(nèi)容是追加到原列表最后一個元素的后面

  • 添加元素也可以通過切片的方式實現(xiàn):
  • 想要在任意位置添加元素,可以使用 insert() 方法
刪除元素
  • 使用 remove() 方法刪除元素,存在多個匹配的元素時只刪除第一個,不存在待刪除的元素時會報錯

  • 使用 pop() 方法刪除指定位置的元素,參數(shù)為索引值

  • 使用 clear() 方法刪除所有元素,清空列表

更改元素
  • 可以直接用列表和下標(biāo)進(jìn)行更改
  • 可以利用切片對列表元素進(jìn)行更改


  • 可以使用 sort() 方法對列表進(jìn)行排序,默認(rèn)是升序,將sort()方法的reverse參數(shù)設(shè)置為true時為降序排列
查找元素
  • 使用 count() 方法查看列表有多少個指定元素
  • 使用 index() 方法查看特定元素的索引值,存在多個匹配的元素時返回第一個匹配元素的索引值,還可以在元素后面指定開始和結(jié)束查找的位置
拷貝列表
  • 使用 copy() 方法實現(xiàn)拷貝
  • 使用 切片 實現(xiàn)列表拷貝

這里實現(xiàn)的拷貝都是淺拷貝

淺拷貝只是拷貝的外層對象,如果包含嵌套對象,拷貝的只是其引用,要實現(xiàn)深拷貝,需要引入 copy 模塊,使用其 deepcopy() 方法

  • 淺拷貝


  • 深拷貝


列表推導(dǎo)式

通過列表推導(dǎo)式修改列表,執(zhí)行速度通常是for循環(huán)的兩倍,列表推導(dǎo)式采用更快的C語言的速度來運(yùn)行,比PVM里面以步進(jìn)的速度運(yùn)行的for循環(huán)快得多
語法: [Expression for target in Iterable]


列表推導(dǎo)式for循環(huán)的效果并不完全一樣:

  • 循環(huán)是通過迭代來逐個修改原列表中的元素
  • 列表推導(dǎo)式則是直接創(chuàng)建一個新的列表,然后再賦值回原先的變量
  • 從效果上來看,列表推導(dǎo)式幾乎都可以實現(xiàn)我們的需求

列表推導(dǎo)式還可以添加條件
語法: [Expression for target in Iterable if condition]

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容