如何使用 len 为我提供列表中的元素数(而不是字母数)?

-2 python tuples list string-length

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

例如:

> data = “cat”, “dog”
> len(data)
2
Run Code Online (Sandbox Code Playgroud)

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

> data = “cat”
> len(data)
3
Run Code Online (Sandbox Code Playgroud)

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

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

Jac*_*ues 5

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

例子:

元组:

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

细绳:

tup = ('cat') # notice no trailing comma
print(len(tup)) # 3
print(type(tup)) # <class 'str'>
Run Code Online (Sandbox Code Playgroud)