1. 程式人生 > >Python系統學習第二課

Python系統學習第二課

#轉義字元
用一個特殊的方法表示一個不太好表示的內容,比如回車鍵,退格鍵,換行鍵
藉助反斜槓,一旦字元中出現反斜槓,則其後面的一個或者幾個字元就不是原來的意思,進行了轉義

s = 'Let's go!'
print(s)
  File "<ipython-input-1-130822ae9263>", line 1
    s = 'Let's go!'
             ^
SyntaxError: invalid syntax
s = 'Let\'s go!'
print(s)
Let's go!
#或者用單雙引號交叉
s ="Let's go!'"
print(s)
Let's go!'

如果想列印一個反斜槓,用兩個反斜槓代表斜槓,有的時候一個也能用,例如C:\windows
在字串中,一旦出現反斜槓一定要注意

s = "c:\user"
print(s)
  File "<ipython-input-5-f121ec5b048e>", line 1
    s = "c:\user"
       ^
SyntaxError: (unicode error) 'unicodeescape' codec can't decode bytes in position 2-3: truncated \uXXXX escape
s = "c:\\user"
print(s)
c:\user
#換行
s = "i love you, \r\n li zi qaing !"
print(s)
i love you, 
 li zi qaing !

#字串的格式化
把字串按照一定格式列印或者填充
格式化有兩種方法
1,利用百分號:在字串中利用%表示一個特殊的含義,表示對字串進行格式化。%d,此處放入一個整數。%s,表示此處應該放入一個字串
2,利用format函式

s = "%s你好。歡迎來到歡樂人間。"
print(s)
print("i love %s"%"liziqiang")
%s你好。歡迎來到歡樂人間。
i love liziqiang
s = "i am %d years old!"%18
s1 = "i am %d years old!"
print(s)
print(s1%18)
i am 18 years old!
i am 18 years old!
s = "i am %s, i am %d years old!"
print(s%"liziqiang",s%18)#字串中有幾個佔位符就需要有幾個內容替代。
---------------------------------------------------------------------------

TypeError                                 Traceback (most recent call last)

<ipython-input-23-855125d49adf> in <module>()
      1 s = "i am %s, i am %d years old!"
----> 2 print(s%"liziqiang",s%18)


TypeError: not enough arguments for format string
s = "i am %s, i am %d years old!"
print(s%("liziqiang",18))  # 如果出現多個佔位符,相應內容需要用括號括起來
i am liziqiang, i am 18 years old!

#用format函式進行格式化
推薦使用這種方法
在使用上,以{}和:代替%號,後面用format函式帶引數實現

s = "i love {}".format("liziqiang")
print(s)
s1 = "i love {0}, i love {1} too,but my love is {0}".format("liziqaing","li")#從0開始
print(s1)
i love liziqiang
i love liziqaing, i love li too,but my love is liziqaing

##None
表示什麼都沒有
#運算子
加減乘除
運算子分類:算術運算子、比較運算子、關係運算符、賦值運算子、位運算、成員運算子、身份運算子、邏輯運算子
#python裡邊沒有自增自減運算子

#取餘運算
a = 3%2
print(a)
1
#取整運算,地板除
a = 9//4
print(a)
2
#冪運算
a = 2**3
print(a)
8

#比較運算子
比較的結果是布林值

#邏輯運算子
與或非
python中沒有異或運算
and看作乘法,or看作加法,那麼邏輯運算子就可以進行數學運算

a = True
b = False
c = True
d = a and b or c
print(d)
True

#邏輯運算的短路問題
邏輯運算時,按照運算順序計算,一旦可以確定未來式子的未來的值,就不在進行運算,直接返回

a = True or xxxxxxxxxxxxxx
print(a)
#因為前邊已經有True則不管後方是什麼內容則python不在往下進行運算,但是後邊的內容包括賦值運算時,則結果很難預料
True

#成員運算子
用來檢測一個變數是否是另一個變數的成員
in
not in

a = [1,2,1,3,5,4,6]
b = 3
c = 7

d = b in a
e = c in a
print(d)
print(e)
True
False

#身份運算
用來檢測兩個變數是否是同一個變數
a is b
a is not b

a = 9
b = 6

print(a is b)
print(a is not b)
False
True