2017-04-07 105 views
-4

我有蟒蛇名單,我想知道的「字」 /「產品」,在它的數量:如何查看列表的長度?

 print shopping_list 

輸出:[「牛奶,餅乾,蘋果」]

現在輸出應該是3,但其1,我不明白爲什麼:

print len(shopping_list) 

輸出:1

我需要它是一個包含以逗號分隔的那些話

+3

你有1串的列表,而不是3項 –

+0

列表中包含一個** **'字符串'。逗號是**不是**列表分隔符。 –

回答

3

你的首發名單是一個字符串:

shopping_list = ['milk,cookies,apples'] 

這是一個包含一個字符串'milk,cookies,apples' 您需要調整您的列表中,這樣的列表它如下。

shopping_list = ['milk','cookies','apples'] 

您的代碼將按照預期運行。這是一個可以用來計算長度的字符串列表。

你可以讓python使用逗號作爲新項目的指示符來分割列表。

shopping_list = ['milk,cookies,apples'] 
shopping_list = shopping_list[0].split(",") 
print shopping_list 
This will return 
['milk','cookies','apples'] 

注意,由於原始shopping_list是我們需要指出,我們要第一個項目,這是指數[0]列表

print len(shopping_list) 

現在返回3.

+0

你還應該提到如何從字符串OP得到這個列表。 – timgeb

+0

我需要它在一個字符串中。所以我很抱歉,我的意思是:如何在列表中打印「產品」的數量? (他們需要在一個字符串中) – shiftknite

+1

@Michelle'len(yourstring.split(','))'然後。 – timgeb

2

你的列表中包含一串'牛奶,餅乾,蘋果'

你應該分別插入它們

list = ["milk", "cookies"] # at declaration 

list.append("apples") # adding items to the list 

所以現在當你使用:

print len(list) 

輸出爲3

0

所以,如果您的要求是具有用逗號,你可以使用split(標記)功能分離的項目之一串分割你的字符串,它返回一個列表,你可以採取列表的長度,像這樣:

s = 'milk,cookies,apples' 
len(s.split(','))   # 3