2017-09-15 14 views
0

私は宿題に関する質問に困っています。リスト内の文字列の文字をカウントする、Python

基本的には、リストの内側にある文字列で使用される文字をカウントするforループを使用して関数を作成します。私はlen()で文字列の長さを取得することができますが、文字列の1つしか取得できず、リスト形式で取得できないようです。

マイコード:

def method1(input1): 

    total = 0 

    a = [] 

    for word in input1: 

     total = len(word) 

     a = [total] 

    return a 

これは、[3]入力[ '7'、 '1']

で任意の助けをいただければ幸い返します。私はPythonの新機能です。

+0

'return sum([入力1のlen(a)])' – jordanm

+0

はあなたがする必要があるのは 'a + = [total]'です。これはリスト形式の文字列の長さを返します。あなたの入力が '['Seven'、 'one']'の場合。それは '[5,3]'を返します – Digvijayad

+0

@Digvijayadそれはトリックでした!どうもありがとうございます! – JDF

答えて

1

これを行う方法の1つが、ここにあります。それらの中に異なる文字列を持つリスト "a"があります。あなたは各文字列のlen gthを数えてリストを反復するだけです。

def method1(input1): 

    l = list(input1) 
    total = sum(len(i) for i in l) 
    return int(total) 

print(method1(["hello", "bye"])) 

ここでは入力を受け取り、それをリストに変換しています。次に、リスト内の各値について、長さを計算しています。 sumはこれらの長さを合計し、最後にtotalを返します。

+0

'int(total) 'は必要ありません。すでに' int'です。また、 'input1'の' iのために ''十分である '' I'が必要ではありません - これは ''入力1のiに対してienを返す ''または '' return sum(map(len、input1) ) ' – AChampion

+0

フィードバックありがとう! – ADug

関連する問題