#方法1
d=[1,2,[3,4]]
c=[]
for i in d:if type(i)== int:c.append(i)else:c.extend(i)# append方法用于將單個元素添加到列表的末尾,這意味著無論元素是什么類型# (如整數、字符串等),它都將作為一個獨立的元素添加到列表中。# extend方法則用于將一個可迭代對象中的所有元素添加到# 列表的末尾。這意味著,如果你傳遞一個列表給extend方法,它將逐個# 添加該列表中的每個元素,而不是將整個列表作為一個單獨的元素添加。
print(c)
#方法2
d=[1,2,[3,4]]
c=[]
for i in d:if type(i)== int:c.append(i)else:for j in i:c.extend([j])# append方法用于將單個元素添加到列表的末尾,這意味著無論元素是什么類型# (如整數、字符串等),它都將作為一個獨立的元素添加到列表中。# extend方法則用于將一個可迭代對象中的所有元素添加到# 列表的末尾。這意味著,如果你傳遞一個列表給extend方法,它將逐個# 添加該列表中的每個元素,而不是將整個列表作為一個單獨的元素添加。
print(c)
在上述代碼中使用exint類型元素,extend方法之后都是正確的用法,唯一不同的區別是第一個的i是數列,第二個的j是元素,而該方法只用于可迭代對象,可迭代對象包括元組(tuple)、列表(list)、字典(dict)、字符串(str)、集合(set)、以及ndarray等。所以需要把j轉換可迭代數據再加上
當使用append函數時,這里已經是獨立的元素了,所以只需要直接加上而不用轉化為列表
print(c)
#方法2
d=[1,2,[3,4]]
c=[]
for i in d:if type(i)== int:c.append(i)else:for j in i:c.append(j)# append方法用于將單個元素添加到列表的末尾,這意味著無論元素是什么類型# (如整數、字符串等),它都將作為一個獨立的元素添加到列表中。# extend方法則用于將一個可迭代對象中的所有元素添加到# 列表的末尾。這意味著,如果你傳遞一個列表給extend方法,它將逐個# 添加該列表中的每個元素,而不是將整個列表作為一個單獨的元素添加。
print(c)