Day17.String字符串處理庫

例題引導:現有字符串「abcdefghi」,請使用切片分別提取出ceggec
python

解題關鍵:切片方法的應用。切片是字符串中很重要的一部分,其操做方法和元組、字典等都相似,你們必定要掌握。git

參考答案:api

words = "abcdefghi"
# 正向取
new_words1 = words[-7:-1:2]
# 反向取
new_words2 = words[-3:-8:-2]

print(new_words1)
print(new_words2)

學習引導:微信

  • 查找字符串app

  • 修改字符串ide

  • 刪除字符串函數

  • 判斷字符串學習

string字符串處理庫

字符串做爲一種常見的數據類型,在平常中咱們面臨各式各樣的字符串處理問題,那麼,這就要求咱們必須掌握一些經常使用的字符串處理函數。spa

下面咱們就字符串的基本需求:查找、修改、刪除、判斷這四方面對字符串處理庫進行簡單的介紹。.net

查找

經常使用於查找到函數有:find()、index()、count()

find()

檢測字符串是否包含特定字符,若是包含,則返回開始的索引;不然,返回-1。

str='Welcome to DataScience'
print(str.find('Da'))
#11
print(str.find('wc'))
#-1
index()

檢測字符串是否包含指定字符,若是包含,則返回開始的索引值;不然,提示錯誤。

print(str.index('come'))
#3
print(str.index('Date'))
---------------------------------------------------------------------------

ValueError                                Traceback (most recent call last)

<ipython-input-12-85801a960777> in <module>
----> 1 print(str.index('Date'))
ValueError: substring not found
count()

返回str1在string中指定索引範圍內[start, end)出現的次數。

print(str.count('e'))
#4
print(str.count('Da'))
#1

修改

常見的用於字符串修改函數有replace()、split()、join()、capitalize()、title()、upper() 、loewr()、ljust()、rjust()、center()

replace()

把字符串中的 old(舊字符串)替換成 new(新字符串),若是指定第三個參數max,則替換不超過 max 次。

  • 該函數語法以下:

    str.replace(old, new[,max])

  • 參數說明:

    old -- 將被替換的子字符串

    new -- 新字符串,用於替換old子字符串

  • max -- 可選字符串, 替換不超過 max 次

str='Welcome to Data Science'
print(str.replace("Data", "data"))
#Welcome to data Science
print(str.replace("e", "E", 3))
#WElcomE to Data SciEnce
Split()
  • 若是 maxsplit有指定值,則僅分割 maxsplit 個子字符串;

  • 語法格式以下:

    str.split('分界符', maxSplit)

  • 參數說明:

    maxSplit默認值爲-1,表示根據定界符分割全部能分割的

  • 返回值爲列表

str='Welcome to Data Science'
print(str.split(' '))  #用空格做爲分節符
#['Welcome', 'to', 'Data', 'Science']
print(str.split('e',3))
#['W', 'lcom', ' to Data Sci', 'nce']
capitilize()
  • 將字符串的首字母大寫,其他字母所有小寫

  • 語法結構以下:

    str.capitiliaze()

  • 無參數

str='welcome to Data Science'
print(str.capitalize())
#Welcome to data science
join()
  • 用於將序列中的元素以指定的字符鏈接生成一個新的字符串。

  • 語法結構以下:

    str.join(sequence)

  • sequence -- 要鏈接的元素序列。

seq='Welcome to Data Science'
str='-'
print(str.join(seq))
#W-e-l-c-o-m-e- -t-o- -D-a-t-a- -S-c-i-e-n-c-e
title()
  • 將字符串中的全部單詞的首字母大寫,其他字母所有小寫;

  • 值得注意的是,這裏單詞的區分是以任何標點符號區分的,即,標點符號的先後都是一個獨立的單詞,字符串最後一個標點除外哦。詳細看示例哈

  • 語法結構以下:

    str.title()

    無參數

str='welcome to data science'
print(str.title())
#Welcome To Data Science
str='welcome,to data-science.'   #加標點符號
print(str.title())
#Welcome,To Data-Science.
lower()
  • 將字符串的全部字母轉換爲小寫;

  • 語法格式以下:

    str.lower()    

    無參數

str='WELCOME TO DATA SCIENCE'
print(str.lower())
#welcome to data science
upper()
  • 將字符串的全部字母轉換爲大寫;

  • 語法格式以下:str.upper()

    無參數

str='welcome to data science'
print(str.upper())
#WELCOME TO DATA SCIENCE
ljust()
  • 將字符串左對齊,並使用空格填充至指定長度len;

  • 語法格式以下:

    str.ljust(len)

str='Welcome to data science'
print('str的原長度爲%d'%(len(str)))
print('str處理後的長度爲%d'%(len(str.ljust(30))))
print(str.ljust(30))
'''
str的原長度爲23
str處理後的長度爲30
Welcome to data science  
'''    
rjust()
  • 將字符串右對齊,並使用空格填充至指定長度len;

  • 語法格式以下:

    str.rjust(len)

str='Welcome to data science'
print('str的原長度爲%d'%(len(str)))
print('str處理後的長度爲%d'%(len(str.rjust(30))))
print(str.rjust(30))
#str的原長度爲23
#str處理後的長度爲30
#       Welcome to data science
center()
  • 將字符串居中,並使用空格填充至指定長度len;

  • 語法格式以下:

    str.center(len)

str='Welcome to Data Science'
print(str.center(30))
print('str的原長度爲%d'%(len(str)))
print('str處理後的長度爲%d'%(len(str.center(30))))
#   Welcome to Data Science    
#str的原長度爲23
#str處理後的長度爲30

刪除

經常使用的字符串刪除方法有:lstrip()、rstripe()、stripe()

lstrip()
  • 去掉字符串左邊的空白字符;

  • 語法格式以下:

    str.lstrip()

str='   Welcome to Data Science'
print(str)
print(str.lstrip())
#   Welcome to Data Science
#Welcome to Data Science
rstrip()
  • 去掉字符串右邊的空白字符;

  • 語法格式以下:

    str.rstrip()

str='Welcome to Data Science   '
print(str)
print(str.rstrip())
#Welcome to Data Science  
#Welcome to Data Science
  • strip()
  • 去掉字符串兩邊的空白字符;

  • 語法格式以下:

    str.strip()

str='   Welcome to Data Science   '
print(str)
print(str.strip())
#   Welcome to Data Science  
#Welcome to Data Science

判斷

常見的用於判斷字符串的函數有:startwith()、endwith()、isalpha()、isdigit()、isalnum() 、isspace()

startswith()
  • 檢查字符串str是否 以字符串str1開頭,如果,則返回True;不然,返回False;

  • 語法結構以下:

    str.startswith()

str='Welcome to Data Science'
print(str.startswith('W'))
print(str.startswith('w'))
#True
#False
endswith()
  • 檢查字符串str是否 以字符串str1結尾,如果,則返回True;不然,返回False;

  • 語法結構以下:

    str.endswith()

str='Welcome to Data Science'
print(str.endswith('e'))
print(str.endswith('c'))
#True
#False
isalpha()
  • 若是字符串str中只包含字母,則返回True;不然,返回False;

  • 語法結構以下:

    str.isalpha()

str='Welcome to Data Science'
print(str.isalpha())   #包含空格
#False
str_='asd'
print(str_.isalpha())
#True
  • isdigit()
  • 若是字符串str中只包含數字,則返回True;不然,返回False;

  • 語法結構以下:

    str.isdigit()

str='Welcome to Data Science'
print(str.isdigit())
#False
str_='12345'
print(str_.isdigit())
#True
  • isalnum()
  • 檢測字符串是否由字母和數字組成。

  • 語法結構以下:

    str.isalnum()

str='Welcome to Data Science'
print(str.isalnum())
#False
str_='123data'
print(str_.isalnum())
#True
  • isspace()
  • 若是字符串str中只包含空格,則返回True;不然,返回False;

  • 語法結構以下:

    str.isspace()

str='Welcome to Data Science'
print(str.isspace())
#False

小做業:

1.現有字符串「abcdefghi」,請使用切片分別提取出ceggec

2.迴文數是指從左向右讀和從右向左讀都是同樣的數,輸入一個整數,判斷該整數是否爲迴文數。

3.控制檯輸入任意字符串,將其去掉重複的字符後,按照字符ASCII碼順序從小到大排序後輸出。例如:輸入asdopwwsa16yy7aq,輸出167adopqswy

4.將如下字符串按結果要求分割輸出

#原字符串:
'better9late9than9never'

#分割後輸出列表嵌套的字符串:
['better', 'late', 'than', 'never']

好文章,我 在看❤

本文分享自微信公衆號 - DataScience(DataScienceTeam)。
若有侵權,請聯繫 support@oschina.cn 刪除。
本文參與「OSC源創計劃」,歡迎正在閱讀的你也加入,一塊兒分享。

相關文章
相關標籤/搜索