python基础技巧总结(一)
最近總結一下python基礎知識,就暫時棄坑了。
本文總結只屬于python的一些騷操作。。。
后面文章自行去博客學習交流
原地交換
Python 提供了一個直觀的在一行代碼中賦值與交換(變量值)的方法
?
x, y = 10, 20 print(x, y)x, y = y, x print(x, y)#1 (10, 20) #2 (20, 10)原理:賦值的右側形成了一個新的元組,左側立即解析(unpack)那個(未被引用的)元組到變量 <a> 和 <b>。一旦賦值完成,新的元組變成了未被引用狀態并且被標記為可被垃圾回收,最終也完成了變量的交換。
鏈狀比較操作符
Python不用很多條件一個一個寫,比較操作符可以聚合。
n = 10 result = 1 < n < 20 print(result)# Trueresult = 1 > n <= 9 print(result)# False三元操作符進行條件賦值
三元操作符是 if-else 語句也就是條件操作符的一個快捷方式:[表達式為真的返回值] if [表達式] else [表達式為假的返回值]
這里給出一個你可以用來使代碼緊湊簡潔的例子。下面的語句是說“如果 y 是 9,給 x 賦值 10,不然賦值為 20”。
x = 10 if (y == 9) else 20?在列表推導中:
[m**2 if m > 10 else m**4 for m in range(50)]判斷最小值:
def small(a, b, c):return a if a <= b and a <= c else (b if b <= a and b <= c else c)類中:
x = (classA if y == 1 else classB)(param1, param2)?
多行字符串
a='''dvfssd fsdfdsfsd dsdsfbfdfasf afasfaf''' print(a)In判斷
可以直接用來判斷某個變量是否在列表中
我們可以使用下面的方式來驗證多個值:
?
if m in [1,3,5,7]:
?
而不是:
?
if m==1 or m==3 or m==5 or m==7:
?
六、?四種翻轉字符串/列表的方式
?
# 翻轉列表本身
?
testList?=?[1,?3,?5]
testList.reverse()
print(testList)
?
#-> [5, 3, 1]
?
# 在一個循環中翻轉并迭代輸出
?
for?element?in?reversed([1,3,5]):
????print(element)
?
#1-> 5
#2-> 3
#3-> 1
?
# 一行代碼翻轉字符串
?
"Test Python"[::-1]
?
輸出 “nohtyP tseT”
?
# 使用切片翻轉列表
?
[1, 3, 5][::-1]
?
#輸出 [5,3,1]。
?
?
?
?
?
總結
以上是生活随笔為你收集整理的python基础技巧总结(一)的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: leetcode189. 旋转数组
- 下一篇: 排序算法基本介绍及python实现(含详