我想了解這段代碼是如何作業的,我們有:
people = ['Dr. Christopher Brooks', 'Dr. Kevyn Collins-Thompson',
'Dr. VG Vinod Vydiswaran', 'Dr. Daniel Romero']
def split_title_and_name(person)。
return person.split()[0] ' '/span> person.split()[-1]
因此,我們得到了一個串列,這個方法基本上應該是洗掉 "Dr. "和姓氏之間的所有內容。據我所知,split()函式不能用于串列,只能用于字串。所以person必須是一個字串。然而,我們還在person中加入了[0]和[-1],這意味著我們應該得到 "person "的第一個和最后一個字符,但我們得到的卻是第一個字和最后一個字。我無法理解這段代碼! 你能幫助我理解嗎?
任何幫助都是巨大的。
非常感謝您的幫助,謝謝您 :)
uj5u.com熱心網友回復:
分割函式將字串分割成一個單詞串列。然后我們選擇第一個和最后一個詞來形成輸出。
person = 'Dr. Christopher Brooks'
person.split()
['Dr.'/span>, 'Christopher'/span>, 'Brooks'/span>]
person.split()[0]
'Dr.'
person.split()[-1]
'Brooks'/span>
uj5u.com熱心網友回復:
這不是一個真正的答案,只是為了澄清在給定一個字串串列的情況下如何使用該函式而添加的。
people = ['Dr. Christopher Brooks', 'Dr. Kevyn Collins-Thompson',
'Dr. VG Vinod Vydiswaran', 'Dr. Daniel Romero']
def split_title_and_name(person: str)。)
return person.split()[0] ' '/span> person.split()[-1]
# This code does not actually run (I guess this might have been what you were trying)
# result = split_title_and_name(people)
# 使用for回圈來列印在每個串列元素上運行函式的結果
print('== With loop'/span>)
for person in people:
結果 = split_title_and_name(person)
print(result)
# 使用串列理解來獲得與上面相同的結果。
print('== With list comprehension')
結果 = [split_title_and_name(person) for person in people]
print(results)
uj5u.com熱心網友回復:
Python的split()方法將一個字串分割成一個串列。你可以指定分隔符,默認的分隔符是任何空白。所以在你的例子中,你沒有指定任何分隔符,因此這個函式將把字串person分成['Dr.', 'Christopher', 'Brooks'],因此[0] = 'Dr.'和[-1] = 'Brooks'。
split()函式的語法是。string.split(separator, maxsplit),這里兩個引數都是可選的。
如果你沒有給出任何引數,那么分離器的默認值是任何空白,比如space, ,
等,而maxsplit是-1(意思是,所有的出現)
你可以在https://www.w3schools.com/python/ref_string_split.asp
上了解更多關于 split() 的資訊。轉載請註明出處,本文鏈接:https://www.uj5u.com/shujuku/332336.html
標籤:
