如何在Python中打印具有不同数据类型的嵌套列表元素?

如何在Python中打印具有不同数据类型的嵌套列表元素?,python,Python,我有一个列表l1=[1,2,10,9,[3,4,'你好]]。我想遍历嵌套列表[3,4,'Hello'],并打印每个元素 我已经尝试了这里添加的代码片段。它既没有给出输出,也没有任何错误。 l1=[1,2,3,4,‘你好’]] 对于l1中的i: 如果类型(i)=“列表”: 对于i中的j: 打印(j)您的类型检查不正确,您正在将类型与字符串进行比较,请改用isinstance if isinstance(i, list): 或者删除引号,使其列表而不是'list'类型返回类型类的对象,并将其与'l

我有一个列表l1=[1,2,10,9,[3,4,'你好]]。我想遍历嵌套列表[3,4,'Hello'],并打印每个元素

我已经尝试了这里添加的代码片段。它既没有给出输出,也没有任何错误。 l1=[1,2,3,4,‘你好’]] 对于l1中的i: 如果类型(i)=“列表”: 对于i中的j:
打印(j)

您的类型检查不正确,您正在将类型与字符串进行比较,请改用
isinstance

if isinstance(i, list):

或者删除引号,使其
列表
而不是
'list'

类型返回类型类的对象,并将其与'list'进行比较,作为字符串,只需如下更改:

l1 = [1, 2, [3, 4, 'Hello']]
for i in l1:
    if type(i) is list:
        for j in i:
            print(j)

type(i)
将返回类型对象而不是字符串。只需调整列表即可。>它正在工作。非常感谢您的详细解释。
for _ in range(int(input())):
    name = input()
    score = float(input())
    marksheet += [[name, score]]
    scorelist += [score]


scorelist = list(dict.fromkeys(scorelist))
b = sorted(scorelist)[1] 

for a, c in sorted(marksheet):
    if c == b:
        print(a)
a = [1, 2, 10, 9, [3, 4, "Hello"]]
b = []
for i in a:
    if type(i) == type(b):
        for j in i:
            print(j)
    else:
        print(i)