首页 > 解决方案 > 如何使用 len 给我列表中的元素数量(而不是字母数量)?

问题描述

我一直在用 len 和 tuples 遇到这个问题。我想找出一个元组中有多少个元素。到目前为止,它适用于具有至少两个元素的元组。

例如:

> data = “cat”, “dog”
> len(data)
2

这将返回 2。但如果我只有一个元素

> data = “cat”
> len(data)
3

这将返回 3,因为它计算字母。我希望它返回 1,因为数据中有一个字符串。

关于我如何做到这一点的任何想法?谢谢。

标签: pythonlisttuplesstring-length

解决方案


这个问题是因为您没有正确声明元组,当您只需要元组中的一个项目时,您需要使用tup = ('cat',)尾随逗号,而没有尾随逗号 python 解释您正在谈论一个字符串,因此返回该字符串的长度细绳。

例子:

元组:

tup = ('cat',) # notice the trailing comma meaning a tuple
print(len(tup)) # 1
print(type(tup)) # <class 'tuple'>

细绳:

tup = ('cat') # notice no trailing comma
print(len(tup)) # 3
print(type(tup)) # <class 'str'>

推荐阅读