1. 程式人生 > >day 06 字串和列表的方法

day 06 字串和列表的方法

一.整形int

定義方式:

age=18    #呼叫age=int(18)的方法,自動呼叫

n=int("123") #只能轉換純數字型別

二:浮點型float

定義方式

salary=1.1   #salary=float(1.1)

#瞭解:

複數

x=1+2j

print(x.real)

print(x.imag)

十進位制的各種轉換

bin(11)     #轉成二進位制

oct(22)    #轉成八進位制

hex(11)   #轉成十六進位制

 

字串型別:

name ="tom"   #name=str("tom")

# 資料型別轉換:str可以將任意型別轉換成字串

反正都是在值的左右兩邊加上冒號

常用操作和內建方法

一.優先掌握的

1.按索引取值(正向取反向取)  #因為字串型別是不可變型別,所以只能取,不能修改

字串所有的方法和操作都是不能修改字元的值的,只能通過返回值,返回對字串進行修改後結果

  0:表示字串第一個索引的位置

  -1:表示字串最後一個索引的位置,

2.切片(顧頭不顧尾,步長):

切片預設語法 msg=[1:2:3]  # 1位置不填寫值,預設從字串的起始邊界

             2位置不填寫值,預設到字串的終點邊界

             3位置預設值,為1,即正向取值,每次去一個,若要反向取值,必須為負值

注意:步長的取值的方向必須和索引取值的方向相同,否則切出空字串,即從左往右,步長為正,從右往左,步長為負值

3.長度

len(字串) 返回字串的長度

4.成員運算in和not in:判斷一個字串是否存在一個字串當中

5.移除字串左右兩邊的字元,

預設值:移除字串左右兩邊的空格,包括(\n \t)

只清楚字串開頭的字串,只要中間被打斷將不再清除

也可以指定一堆字串

msg='+-*&^%egon-=)^(#'
print(msg.strip('-+*&^%(#='))

6.切分split:把一個字串按照某種分隔符切成一個列表

7:迴圈,使用for迴圈取值

二:需要掌握的

1.strip(),rstrip(),lstrip()

分別是,去除兩邊的字元,去除右邊的,去除左邊的

2.lower(),upper()

分別是:所有字元變小寫,所有字元變大寫

3.startswith(),endswith()

分別是:判斷字元是否以某個字串開頭,是否以某個字串結尾

4.format

print("My name is{name},my age is {age}".format(name="haha",age=18)) # 這個是字串獨有的用法

print("嘿嘿{0}{0}{0},{1}{1}".format(哈哈,呵呵))  #使用索引重複使用format給定的值

print("My name is {},my age is {}".format("haha",19))

5.split(),rsplit()

split() 使用給定的字元引數,切分字串,也可以指定切分得個數,也可以指定單詞用來切分

str1="123haha456haha789"
print(str1.split("haha"))

rsplit() 從右往左切分

6:replace(old,new,count)

使用new,來替換字串裡面的old值,count指定替換的個數

7.isdigit:當字串是由純數字組成時返回True

瞭解操作

1find(),rfind(),index(),rindex(),count()

find()分別是尋找字串在大字串的起始位置,find()在找不到的時候會返回-1

rfind()從右往左尋找,

index()的功能和find()的功能相同,index() 在找不到的時候會報錯

count()  尋找子串在大字元中出現的次數

 

2center(),ljust(),rjust(),zfill()

center(width,char) center讓字串居中顯示總長度為width,char為填充的字串

如果width比字串的長度要短,則直接返回原字串

ljust(width,char) 字串左對齊,長度為width,使用char填充

rjust(width,char) 字串右對齊,長度為width,使用char填充

 

3.capitalize(),swapcase(),title()

capitalize() 首字元大寫其他字元小寫

swapcase()  字串中大寫變小寫,小寫變大寫

title()  字串中每個單詞的首字母大寫,其他變小寫

4.is數字系列

"123".isdigit()   #True

.isnumeric()可以判斷 羅馬數字,中文數字,中文繁體數字

5.is其他

isalnum() 字串由字母和數字組成

isalpha() 字元由字母組成

isidentifier()

islower()

isupper()

isspace()

istitle()

列表型別

資料型別轉換:list

常用操作+內建方法

一.優先掌握的方法

1.按索引取值(正向存取,反向存取) :列表是可變型別,可存可取

2,切片(與字串相同) #不會改變原列表,而是返回一個新的列表

3長度

len()

4成員運算(in和 not in)

5.追加append和插入insert()

append() 只能往列表末尾新增一個值,append裡面的引數是一個列表也只會將列表當做一個整體,放到呼叫列表中

insert(1,"")  指定索引和引數,insert也只能一次性插入一個值,指定插入位置的索引

6刪除

單純的刪除,沒有返回值,並不是列表特有的操作

del list[1]

li.remove("a")  從列表中將a這個值移除,有多個只會移除最先匹配到的一個,沒有返回值

li.pop(1)      移除指定位置的值,有返回值,預設彈出列表中最後一個元素的值

7迴圈

使用for 迴圈去除列表中的值

二:需要掌握的操作

li.extend() 將如果引數是列表將列表打散新增到列表中(只能打散一層),引數為字串,則將每個字元新增到列表中,引數為字典則新增key

li.reverse()將列表反轉

li.sort() 排序