python数据类型之列表(二)

列表基础详见:https://www.cnblogs.com/gaofeng-01/p/16788576.html

列表相关题目
 
1、列表去重
复制代码
# ①利用集合没有重复元素的特性,通过set()方法
lst1 = ['a', 'dc', 'abc', 'ab', 'abc', 'a', 'ab', 'ac', 'c']
lst2 = sorted(set(lst1))  # 先转成集合,再生成新列表。

# ②利用字典的键遵循不重复原则,可利用字典的方法进行去重
lst3 = dict.fromkeys(lst1).keys()

# ③遍历列表再依次判断
lst4 = []
[lst4.append(i) for i in lst1 if i not in lst4]

# ④通过count()方法判断删除出现过2次+的元素
[lst1.remove(lst1[lst1.index(j)]) for j in lst1 if lst1.count(j) >= 2]

# ⑤和④相反,通过count()方法判断留下只出现过1次的元素,但是这种方法会把重复的元素全部删掉
lst5 = ['a', 'dc', 'abc', 'ab', 'abc', 'a', 'ab', 'ac', 'c']
lst6 = []
[lst6.append(k) for k in lst5 if lst5.count(k) == 1]
复制代码

 

2、将列表转为不包含'[]'的字符串
复制代码
# 将列表转为不包含'[]'的字符串
a = ['a', 1, 2, 3, 4, [5, 6]]
str1 = ''
for i in a:
    if isinstance(i, str):
        str1 = str1+i
    elif isinstance(i, list):
        for j in i:
            if isinstance(j, str):
                str1 = str1 + j
            else:
                str1 = str1 + str(j)
    else:
        str1 = str1 + str(i)
print(str1)
复制代码

 

3、有一个多层嵌套列表A=[1,2,[3,4,['434',[...]]]],请写一段代码遍历A中的每个元素并打印出来
复制代码
A = [1, 2, [3, 4, ['434', [...]]]]
B = []


def loop_items(lst):
    for i in lst:
        if isinstance(i, list):
            return loop_items(i)
        else: 
            B.append(i)
    return B
复制代码

 

 
posted @   杰个就斯爱情o  阅读(13)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· 阿里巴巴 QwQ-32B真的超越了 DeepSeek R-1吗?
· 【译】Visual Studio 中新的强大生产力特性
· 10年+ .NET Coder 心语 ── 封装的思维:从隐藏、稳定开始理解其本质意义
· 【设计模式】告别冗长if-else语句:使用策略模式优化代码结构
点击右上角即可分享
微信分享提示