python之字符串的分割和拼接


關於string的split 和 join 方法

對導入os模塊進行os.path.splie()/os.path.join() 貌似是處理機制不一樣,但是功能上一樣。

 

1.string.split(str=' ',num=string.count(str)):  以str為分隔,符切片string,如果num有指定值,則僅分隔num個子字符串。

S.split([sep [,maxsplit]]) -> 由字符串分割成的列表 返回一組使用分隔符(sep)分割字符串形成的列表。如果指定最大分割數,則在最大分割時結束。

如果分隔符未指定或者為none,則分隔符默認為空格。

注意:分隔符不能為空,否則會出錯,但是可以有不含其中的分隔符

os.path.split()
os.path.split是按照路徑將文件名和路徑分割開,比如d:\\python\\python.ext,可分割為['d:\\python', 'python.exe']

 

 import os
 print os.path.split('c:\\Program File\\123.doc')
 print os.path.split('c:\\Program File\\')
 -----------------output---------------------
 ('c:\\Program File', '123.doc')
 ('c:\\Program File', '')

 

2.string.join(sep):  以string作為分割符,將sep中所有的元素(字符串表示)合並成一個新的字符串。

將join里字符串、元祖、列表的所有元素通過分隔符連接成一個新的字符串(字符串、元祖、列表它們是序列類型,有着相同的訪問方式)

os.path.join(path1[,path2[,......]]) 將多個路徑組合后返回,第一個絕對路徑之前的參數將被忽略。

 5 >>> os.path.join('c:\\', 'csv', 'test.csv')
 6 
 7 'c:\\csv\\test.csv'
 8 
 9 >>> os.path.join('windows\temp', 'c:\\', 'csv', 'test.csv')
10 
11 'c:\\csv\\test.csv'
12 
13 >>> os.path.join('/home/aa','/home/aa/bb','/home/aa/bb/c')
14 
15 '/home/aa/bb/c'

 

例子:

寫一個函數,參數為一個長字符串和一個word,將長字符串中是word的改為對應字母個數的**,比如,長字符串為“this hack is wack hack”,word為“hack”,那么要求函數輸出:“this **** is wack ****”

def censor(text,word):
    texts = text.split(" ")
    for i in range(len(texts)):if texts[i] == word:
            texts[i] = "*" * len(word)
    return " ".join(texts)

print censor("hey hey hey","hey")

輸出:

*** *** ***

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM