DAY3 python基礎之資料類型總覽

來源:互聯網
上載者:User

標籤:輸出   修改   開頭   位置   style   範圍   基礎   字串   size   

一.資料類型總覽

  int : 數值,用於數學計算,計數;例如:1,2,3,4,...

  str :字串,用於少量資料的儲存,方便操作。

  bool : 布爾型,只有兩個狀態True,False。機器反饋給使用者“對”或“錯”。

  list : 列表,儲存大量資料,各種資料。例如:{1,‘alex‘,True,[],{}...}

  tuple :(),元組,又稱為唯讀列表,只能閱讀不能修改。

  dict :{},索引值對的形式儲存資料,儲存大量的關聯型資料

  set :{},集合,用於關係測試。

二. 數值

  詳細的操作,看之前的部落格。

  關鍵知識點:

    bit_length():  十進位數轉為二進位所佔的最小位元

    1 0000 0001 有效位元為1

     2 0000 0010 有效位元為2

    例子:     

             i = 2
print(i.bit_length())
       >>> 2
三. bool布爾型

  數值轉換:

    int ----> bool  :   只有0是False,非0都是True

    bool---->int    :    True對應的是1,False對應的是0

    

    bool---->str   : bool(str),只有Null 字元串對應的bool值為False。

四. 字串

  對字串的下面兩個部分操作:形成的都是一個新的字串,與原字串沒有關係。

  (一)索引,切片,步長

  在Python中,從左向右,第一個元素的索引值為0;從右往左,索引值從-1,-2...所以最後一個元素的索引值為-1.

  # 按索引取值  s1 = ‘python1期騎士計劃‘

  print(s1[0],type(s1[0]))
  print(s1[2])
  print(s1[4])

 # 按切片取值,取一段範圍的元素。
  [start:end] : 顧頭不顧尾,取不到結尾值。
  [:end] : 表示從頭開始取
  [start:] : 表示取到結尾
  s1 = ‘python1期騎士計劃‘
  print(s1[-4:])
  print(s1[1:])
 # 按切片+步長來取值,[start:end:step]
  
s1 = ‘python1期騎士計劃‘
print(s1[0::2])
  
  # 如果想倒敘取值,可以用反向步長“-”
   
print(s1[1::-1])
  
 (二)字串常用的方法(*代表重要程式)
  ‘‘‘capitalize():首字母大寫 *** ‘‘‘
name = ‘oldboy‘print(name.capitalize())
>>> Oldboy

  ‘‘‘center(長度,填充符號): 字串置中,前後填充指定字元  **‘‘‘

name = ‘oldboy‘print(name.center(10,‘*‘))
>>>**oldboy**

  ‘‘‘upper():英文全部轉為大寫

    lower():英文全部轉為小寫

   ***** ‘‘‘

name = ‘oldboy‘print(name.upper())>>> OLDBOYname2 = ‘OLDBOY‘print(name.lower())>>> oldboy

  ‘‘‘title():字串中的首字母大寫。 **

   # title 非字母隔開的每個部分的首字母大寫

  ‘‘‘

name = ‘i love python‘print(name.title())>>>I Love Python

  ‘‘‘

  ***

  startswith(): 判斷字串是否以指定字元開頭,返回True/False。

  endswith(): 判斷字串是否以指定字元結尾,返回True/False。

  ‘‘‘

 

name = ‘oldboy‘print(name.startswith(‘ol‘))
>>> Trueprint(name.endswith(‘oy‘))
>>> True

 

  # 還可以判斷字串其中的切片是否以指定字元為開頭

startswith(prefix,start=None,end=None)print(name.startswith(‘ld‘,1,5))

  ‘‘‘通過元素找索引

  index():找到字串中第一個指定元素的最左索引,如果不存在,報錯。

  find():找到字串中第一個指定元素的最左索引,如果不存在,返回-1。

  ‘‘‘

name = ‘oldboy‘print(name.index(‘o‘))print(name.find(‘o‘))print(name.index(‘ld‘))

  ‘‘‘

  *****

  strip(): 去掉字串中指定部分,預設去除空格。

  lsrtip():去除左邊的空白字元。

  rstrip(): 去除右邊的空白字元。

  ‘‘‘

name = ‘ python is cool   ‘print(name.strip()) #去除空格print(name.strip(‘is cool‘))  #去掉指定部分name1 = ‘weralexqwe‘print(name1.strip(‘erw‘)

  例子:username = input(‘>>>:‘).strip()

 

  ‘‘‘
  *****
  split():根據指定的字元(預設:空格)分割字串,返回列表
  # 將字串分割為列表:str--->list
  # 以空格分割符有一個bug,謹記
  ‘‘‘
s1 = ‘alex bob taibai‘l1 = s1.split()print(l1)>>> [‘alex‘,‘bob‘,‘taibai‘]#設定分割次數# s1 = ‘alexlwe‘# print(s1.split(‘l‘,1))
>>>[‘a‘,‘lexlwe‘]
# 以空格為分割符有一個bug
s1 =‘ python java c++‘
print(s1.split())
>>>[‘python‘,‘java‘,‘c++‘] #注意這裡會把python開頭的空白字元省略掉,bug!!

空格正確分割:
print(s1.split(" ")) #需要指定分割符為“ ”
>>> [‘‘,‘python‘,‘java‘,‘c++‘]

  ‘‘‘

  *****

  join():通過指定的連結字串,將可迭代對象的元素串連起來

  ### 把列錶轉化為字串:list---> str

  ‘‘‘

s1 = ‘alex‘s2 = ‘*‘.join(s1)s3 = ‘_‘.join(s1)print(s2)>>>a*l*e*x*print(s3)>>>a_l_e_x
# 把列錶轉為為字串l1 = [‘python‘,‘is‘,‘cool‘]li_to_str = ‘‘.join(l1)print(li_to_str)

  ‘‘‘

  *****

  replace(old,new,count=None):用新的字串替換舊的字串

  ‘‘‘

s1 = ‘java is cool,java is fast‘s2 = s1.replace(‘java‘,‘python‘)   #全部替換s3 = s1.replace(‘java‘,‘python‘,1)  #限制次數print(s2)>>> python is cool,python is fastprint(s3)>>> python is cool,java is fast

  ‘‘‘

  format():格式化輸出

  ‘‘‘

第一種方式:按順序輸入s1 = ‘我叫{},今年{},性別{}‘.format(‘he‘,‘23‘,‘男‘)print(s1)第二種方式:索引,可以重複使用 *****s1 = ‘我叫{0},今年{1},性別{2},我依然叫{0}‘.format(‘he‘,‘23‘,‘男‘)print(s1)第三種方式:傳參,可以打亂傳參位置s1 = ‘我叫{name},今年{age},性別{sex}‘.format(name=‘he‘,age=‘23‘,sex=‘男‘)print(s1)

  ‘‘‘

is系列:返回True/False
isdigit():判斷是否都為數字
isalpha():判斷是否都為字母
isalnum():判斷是否只有數字或字母組成
...

  ‘‘‘

language = ‘python‘print(language.isdigit())>>>Falseprint(language.isalpha())>>>True

  ‘‘‘

  公用方法:

  count():計算指定字元出現的次數

  len(): 計算長度---> 元素的個數

  ‘‘‘

 

 

 

DAY3 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.