1. 程式人生 > >Python基礎學習04

Python基礎學習04

占位符 {} vmware index python 取字符串 含義 pre 截取字符串

註釋

  • 單行註釋------>以井號(#)開頭,可以單獨行,也可以在某行代碼後邊
  • 多行註釋/塊註釋------>行代碼或者內容,以三個連續單引號或雙引號開始和結束,中間任何內容都忽略
# 我寫了這麽多,會不會打印出來
print(第1個:,Hello, World!)

print(第2個:,"Hello, World!")  #打印出Hello, World!

‘‘‘
身是菩提樹
心如明鏡臺
時時勤拂拭
勿使惹塵埃
‘‘‘
print(第3個:,"Hello, World!")

"""
菩提本無樹
明鏡亦非臺
本來無一物
何處惹塵埃
"""
print(
第4個:,"Hello, World!")

輸出結果如下:

第1個: Hello, World!
第2個: Hello, World!
第3個: Hello, World!
第4個: Hello, World!

pycharm中註釋的快捷應用

pycharm中選中單行或多行需要註釋的代碼,鍵盤點擊“Ctrl + /”,則可註釋掉選中內容

選中註釋的內容,再次點擊“Ctrl + /”,則可取消註釋

字符串

目前所認知的字符串就是引號內的一切東西,字符串也可叫文本

字符串表示方法:

  • 單引號------>‘ ‘
  • 雙引號------>" "
  • 三引號------>‘‘‘ ‘‘‘ 或 """ """
str1= 這是個字符串‘    # 單引號
 
str2 = "這也是個字符串"  # 雙引號
 
str3 = ‘‘‘
    
這是個可以
    換行的字符串
    ‘‘‘         # 三引號 print(str1 = ,str1) print(str2 = ,str2) print(str3 = ,str3)

輸出結果如下:

str1 =  這是個字符串
str2 =  這也是個字符串
str3 =  這是個可以
        換行的字符串

轉義字符

  • 用一個特殊的方法表示出一系列不方便寫出的內容,比如回車鍵,換行鍵,退格鍵
  • 借助反斜杠字符,一旦字符串中出現反斜杠,則反斜杠後面一個或者幾個字符已經不是原來的意思了,而是進行了轉義
  • 在字符串中,一旦出現反斜杠就要加倍小心,可能由轉義字符出現
# 示例:Let‘s Go!
# 由於示例中存在了單引號(‘),如果此時字符串仍用‘‘來表示

str4 = Lets Go!print(str4 = ,str4)

# 輸出結果:
# SyntaxError: invalid syntax   ---- (語法錯誤)

# 報錯的原因就是,str4認為儲存的變量為‘Let‘,而後面的s Go!‘是python無法識別的

解決以上的問題,可以用到嵌套引號或者轉義字符

# 示例:Let‘s Go!

# 使用嵌套引號
str5 = "Let‘s Go!"
print(str5 = ,str5)

# 使用轉義符
str6 = Let\‘s Go!
print(str6 = ,str6)

輸出結果為:

str5 =  Let‘s Go!
str6 =  Let‘s Go!

其他一些常用的轉義字符

# 輸出 C:\now
# 由於存在反斜杠(\),因此n已不是原來的意思,\n在python中是換行的意思,因此該處需要進行再次轉義,使 \ 失去轉義的作用

str7 = C:\\now
print(str7 = ,str7)

# 考慮到,如果某一路徑過長例如:C:\Program Files (x86)\VMware\VMware VIX
# 如果都進行轉義,會非常麻煩們,這裏有個更好的方法:

# 在字符串前加 r
str8 = rC:\Program Files (x86)\VMware\VMware VIX
print(str8 = ,str8)

# 註:字符串不能以“\”結尾

以上輸出結果如下:

str7 =  C:\now
str8 =  C:\Program Files (x86)\VMware\VMware VIX

字符串拼接

# 第一種:
st1 = my name is: 
st2 = wilson
str9 = st1 + st2
print(str9 = ,str9)

# 第二種:
str10 =  my name is:     wilson
print(str10 = ,str10)

# 字符串的乘法
str11 = wow  * 3
print(str11 = ,str11)

以上的輸出結果如下:

str9 =  my name is: wilson
str10 =  my name is: wilson
str11 =  wow wow wow 

字符串的squence(序列)操作

每個字符串都存在下標,以PYTHON為例,下標標註如下圖,;每個字符串可以用正下標表示(0---(n-1)),也可以用負下標表示(-n----(-1))。

技術分享圖片

字符串截取的位數是從0開始,而不是1!截取字符串的符號為[]。這個操作符如果只有一個下標參數,那麽我們將得到一個字符;如果參數是2個,中間以:隔開,將返回一段字符串;該操作稱之為slice/切片操作!

如,str[start:end],我們將得到的是從下標start開始,到小標end結束,且不包含end部分

>>> Str = PYTHON
>>> Str[0]
P
>>> Str[6]
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
IndexError: string index out of range      # 下標越界  
>>> Str[0:2]
PY
>>> Str[2:4]
TH
>>> Str[-1]
N
>>> Str[-6:-1]
PYTHO
>>> PY in Str
True
>>> a in Str
False
>>> a not in Str
True

字符串的格式化

  • 把字符串按照一定格式打印或者填充
  • 格式化由兩種方法
    1. 百分號(%)
    2. format函數

百分號(%)格式化

  • 在字符串中,利用%表示一個特殊的含義,表示對字符進行格式化
  • %d: 此處應該放入一個整數
  • %s: 表示此處應該放入一個字符串
name = wilson
age = 18
str12 = my name is %s
# 下面打印,會直接將%s作為字符串的一部分打印出來
print(str12-直接打印:,str12)

# 這個就會打印完整,即將%wilson,填充到%s部分
print(str12-格式化打印:,str12%wilson)       # % 後面直接加字符串

str13 = "I‘m %d years old"
print(str13-直接打印:,str13)
print(str13-格式化打印:,str13%18)             # % 後面直接加數字

str14 = "I am %s, I am %d years old"
print(str14-直接打印:,str14)
# 如果字符串中由占位符,則有幾個占位符必須用幾個實際內容代替,或者一個也不要
# print(s%"Wilson") # 錯誤表示
# 如果出現多個占位符,則相應內容需要用括號括起來
print(str14-格式化打印:,str14%(name, age))     # %後面加變量

輸出結果如下:

str12-直接打印: my name is %s
str12-格式化打印: my name is wilson
str13-直接打印: Im %d years old
str13-格式化打印: Im 18 years old
str14-直接打印: I am %s, I am %d years old
str14-格式化打印: I am Wilson, I am 18 years old

format函數格式化

  • 直接用format函數進行格式化
  • 在使用上,以{}和:代替%號,後面用format帶參數完成
name = wilson
age = 18

str15 = "I am {}".format(wilson)
print(str15 = ,str15)

str16 = "I am {0} and {1} years old,Please call me {0}".format(name, age)
print(str16 = ,str16)

str17 = f"I am {name} and {age} years old,Please call me {name}"
print(str17 = ,str17)

輸出結果如下:

str15 =  I am wilson
str16 =  I am wilson and 18 years old,Please call me wilson
str17 =  I am wilson and 18 years old,Please call me wilson

  

 

Python基礎學習04