第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

Python:從字符串中刪除字符,然后將其返回

Python:從字符串中刪除字符,然后將其返回

函數(shù)式編程 2021-05-13 18:41:29
例如,給定一個字符串列表prices = ["US$200", "CA$80", "GA$500"],我試圖僅返回["US", "CA", "GA"]。這是我的代碼-我在做什么錯?def get_country_codes(prices):    prices = ""    list = prices.split()    list.remove("$")    "".join(list)    return list
查看完整描述

3 回答

?
素胚勾勒不出你

TA貢獻(xiàn)1827條經(jīng)驗 獲得超9個贊

由于prices參數(shù)中的每個字符串都具有形式'[country_code]$[number]',因此您可以將每個字符串拆分'$'為第一部分。

以下是如何執(zhí)行此操作的示例:

def get_country_codes(prices):
    return [p.split('$')[0] for p in prices]

因此get_country_codes(['US$200', 'CA$80', 'GA$500'])返回['US', 'CA', 'GA']

另外請注意,我建議不要命名變量,list因為它會覆蓋list類型list本身的內(nèi)置值。


查看完整回答
反對 回復(fù) 2021-05-25
?
慕俠2389804

TA貢獻(xiàn)1719條經(jīng)驗 獲得超6個贊

您的代碼有多個問題,您必須修復(fù)所有問題才能使其正常工作:


def get_country_codes(prices):

    prices = ""

無論您的來電者傳遞了什么價值,您都將其拋棄并替換為""。您不想這樣做,因此只需刪除最后一行即可。


    list = prices.split()

您真的不應(yīng)該調(diào)用此列表list。另外,split由于沒有在空格上分割參數(shù),因此您得到的可能不是您想要的:


>>> "US$200, CA$80, GA$500".split()

['US$200,', 'CA$80,', 'GA$500']

我想您可以擺脫那些逗號,因為您只是將它們?nèi)拥袅?。但最好使用實際的分隔符進(jìn)行拆分', '。因此,讓我們更改該行:


    prices = prices.split(", ")

    list.remove("$")

這將刪除列表中所有與string相等的值"$"。沒有這樣的值,所以它什么也不做。


更一般而言,您不想丟棄列表中的任何字符串。相反,您想用在處被截斷的字符串替換字符串$。因此,您需要一個循環(huán):


    countries = []

    for price in prices:

        country, dollar, price = price.partition('$')

        countries.append(country)

如果您熟悉列表推導(dǎo),可以將其重寫為單行代碼:


    countries = [price.partition('$')[0] for price in prices]

    "".join(list)

這只會創(chuàng)建一個新字符串,然后將其丟棄。如果要使用它,則必須將其分配給某些對象,如下所示:


    result = "".join(countries)

但是……您真的要在join這里做什么嗎?聽起來您希望結(jié)果是一個字符串列表['US', 'CA', 'GA'],而不是一個大字符串'USCAGA',對吧?因此,請擺脫這條線。


    return list

只需將變量名更改為countries,就可以完成。


查看完整回答
反對 回復(fù) 2021-05-25
?
慕姐8265434

TA貢獻(xiàn)1813條經(jīng)驗 獲得超2個贊

由于數(shù)據(jù)的結(jié)構(gòu)是前兩個字符是縣區(qū)代碼,因此可以使用簡單的字符串切片。

def get_country_codes(prices):
    return [p[:2] for p in prices]


查看完整回答
反對 回復(fù) 2021-05-25
  • 3 回答
  • 0 關(guān)注
  • 235 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動學(xué)習(xí)伙伴

公眾號

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號