Python的語言基礎總結(二)之迴圈與字串操作

來源:互聯網
上載者:User

標籤:star   條件   int   center   error   str   har   反轉   api   

一、迴圈和分支

  1.  條件分支語句

  if  條件:

    代碼塊

  else:

    代碼塊

  2.  迴圈語句之while

  思考1:求1+2+3+....+10的值

  

sum = 0num = 1while num < 101:    sum += num    num += 1print(sum)

   for 迴圈

  for 語句:

    代碼塊

二、字串操作

  1.字串的拼接

  使用加號進行連結  

#字串的連結,通過“+”進行連結s1 = ‘welcome‘s2 = ‘to guangzhou‘print(s1 + s2)

 

  使用“,‘進行連結

s1 = ‘hello‘s2 = ‘world‘print(s1, s2)#使用“,”連結的時候,在“,”的位置會產生一個空格

  使用%格式化連結  

s1 = ‘hello‘s2 = ‘world‘print("%s %s"%(s1, s2))

 

  使用join函數進行連結

s1 = [‘hello‘, ‘world‘]print("".join(s1))

  注意:‘‘.join*()函數內部只需要傳遞一個參數。

  2.重複輸出字串

#重複輸出字串,通過乘法的方式實現s3 = ‘good‘print(s3 * 3)

  3.擷取字串中的字元

#通過索引的方式實現#索引:給一個字串中的字元從0開始編號,也成為下標#索引的取值範圍:[0,str.length-1]#訪問方式: 變數名稱[索引]str3 = ‘good‘print(str3[0])#索引值還可以從-1開始,-1代表倒數第一個字元print(str3[-1])

  4.截取字串

#通過索引的方式實現#索引:給一個字串中的字元從0開始編號,也成為下標#索引的取值範圍:[0,str.length-1]#訪問方式: 變數名稱[索引]str3 = ‘good‘print(str3[0])#索引值還可以從-1開始,-1代表倒數第一個字元print(str3[-1])

  5.判斷是否包含指定字元  

#判斷字串中是否包含某指定字串str4 = "you are a good boy"print("good" in str4)#若包含有則返回True否則為False

 

  6.格式化輸出

#通過%來改變後面的字母或者是符號的含義,%被稱為預留位置# %s:格式化字串# %d:格式化整數# %f:格式化浮點數,可指定小數點後的精度age = 18name = "麗麗"weight = 45.5print("my name is %s , I am %d year old and my weight is %.2f kg"%(name, age, weight))#注意:%.nf表示精確到小數點後n位,會四捨五入

三、關於字串常用函數

  1.eval(str)

  功能:將字串str當成有效運算式來求值並返回計算結果。可以把list,tuple,dict,set和string相互轉化

>>>num1 = eval(‘123‘)>>>print(num1)123>>>num2 = eval("[1, 2, 3]")>>>print(num2)[1, 2, 3]>>> num3 = eval("12-3")>>> print(num3)9

  2.len(str)

  功能:返回當前字串的長度(字元的個數)

>>> len("you are good")12

  3.str.lower()

  功能:返回一個把字串中的大寫字母轉為小寫字母的字串

>>> str = "Hello World">>> print(str.lower())hello world

  4.str.upper()

  功能:返回一個把字串中的小寫字母轉換為大寫字母的字串 

>>> str = "Hello World">>> print(str.upper())HELLO WORLD

  5.str.swapcase()

  功能:返回一個把字串中的大寫字母轉為小寫字母,小寫字母轉為大寫字母的字串(字串大小寫反轉)

>>> str = "Hello World">>> print(str.swapcase())hELLO wORLD

  6.str.capitalize()

  功能:返回一個首字母大寫,其他小寫字串

>>> str = "Hello World">>> print(str.capitalize())Hello world

  7.str.title()

  功能:返回一個每個單字首大寫的字串

>>> str = "Hello World">>> print(str.title())Hello World

  8.str.center(width[,fillchar])

  功能:返回一個指定寬度的置中字串,fillchar為填充字元

>>> str = "Hello World">>> print(str.center(50,"*"))*******************Hello World********************

  9.str.ljust(width[,fillchar])

  功能:返回一個指定寬度的靠左對齊字串,fillchar為填充字元。預設使用空格填充

>>> str = "Hello World">>> print(str.ljust(50,"*"))Hello World***************************************

 

  

  10.str.rjust(width[,fillchar])

  功能:返回一個指定寬度的靠左對齊字串,fillchar為填充字元。預設使用空格填充

>>> str = "Hello World">>> print(str.rjust(50,"*"))***************************************Hello World

  11.str.zfill(width)

  功能:返回一個長度為width字串,原字串靠右對齊,前面補0

>>> str = "Hello World">>> print(str.zfill(50))000000000000000000000000000000000000000Hello World

  12.str.count(str[ ,strat][,end])

  功能:返回字串中str出現的次數,可以指定一個範圍,若不指定,則預設從頭到尾,匹配的時候是區分大小寫

>>> str = "Hello World">>> print(str.count("hello", 0 , 10))0

  13.str.find(str1[,start],[,end])

  功能:從左右右檢測str1字串是否包含字串中,可以指定範圍,預設從頭到尾。

  返回的是第一次出現的下標,若未查詢到,則返回-1

>>> str = "Hello World">>> str1 = "llo">>> print(str.find(str1, 0 , 10))2

  14.str.rfind(str1[,start][,end])

  功能:類似於str.find(),不過是從右邊開始尋找

>>> str = "Hello World">>> str1 = "llo">>> print(str.rfind(str1, 0 , 10))2

  15.str.index(str1[strat=0],[end = len(str)])

  功能類似於find(),與find()不同的是,如果str1不存在的時候會報一個異常

>>> str2 = "Hello World">>> str1 = "hello">>> print(str2.index(str1, 0 , 10))ValueError: substring not found

  16.str.lstrip()

  功能:截掉字串左側指定的字串,預設刪除空白符(包括‘\n‘,‘\r‘,‘\t‘,‘ ‘)

>>> str = ‘**** you are very good‘>>> print(str.lstrip())>>> print(str.lstrip())**** you are very good>>> print(str.lstrip("*")) you are very good

  17,str.rstrip()

  功能:截掉字串右側指定的字串,則預設刪除空白符(包括‘\n‘,‘\r‘,‘\t‘,‘ ‘)

>>> str = ‘**** you are good****‘>>> print(str.rstrip())**** you are good****>>> print(str.rstrip("*"))**** you are good

  18.str.strip()

  功能:截掉字串左右兩側指定的字串,則預設刪除空白符(包括‘\n‘,‘\r‘,‘\t‘,‘ ‘)

>>> str1 = "      hello world     ">>> str1.strip()‘hello world‘

  19.string.split(str = ‘‘,num=string.count(str))

  功能:以str為分割符切片string,如果num有指定值,則僅分割num個子字串

  str--分割符,預設為所有的Null 字元,包括空格、換行(\n)、定位字元(\t)等。num--分割次數

>>> str1 = "hello you are good">>> str1.split()[‘hello‘, ‘you‘, ‘are‘, ‘good‘]>>> str1.split(" ",2)[‘hello‘, ‘you‘, ‘are good ‘]

 

練習:

1.計算1~100以內所有能被3或者17整除的數的和2.計算100-999的水仙花數的個數。3.計算200~500以內能被7整除但不是偶數的數的個數。4.押寶遊戲:開始遊戲 -> 投入賭金【一次性投入】 -> 迴圈  :押寶【5塊錢一次】 -> 開獎  --》中獎/未中獎 --》使用者輸入是否繼續 【當餘額為0則自動結束遊戲】5.百錢買百雞,現有100文錢,公雞5文錢一隻,母雞3文錢一隻,小雞一文錢3隻,要求:公雞,母雞,小雞都要有,買100隻雞,把100文錢花完,買的雞是整數。多少只公雞,多少只母雞多少只小雞?

 

 

 

 

  

 

  

Python的語言基礎總結(二)之迴圈與字串操作

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.