Python 列表去重去除空字符的例子

作者:Fortune_yang 时间:2021-07-11 02:49:14 

如下所示:


# x = ['c b a',"e d f"]
# y = []
# for i in x:
# for ii in i:
# # print(ii)
# if ii == ' ':
# pass
# else:
# y.append(ii)

# print(y)

# python 清除列表中的空字符


# list1 = ['122','2333','3444',' ','422',' ',' ','54',' ']
# 第一种方法会导致最后一个' '没有被移除掉['122', '2333', '3444', '422', '54', ' ']
# for x in list1:
# if x == ' ':
# list1.remove(' ')
# print(list1)

# 第二种方法:['122', '2333', '3444', '422', '54']
# for x in list1:
# if ' ' in list1:
# list1.remove(' ')
# print(list1)

# 第三种方法:遍历空格的个数,然后逐个删除
# for x in range(list1.count(' ')):
# list1.remove(' ')
# print(list1)

# 第四种方法:用了while和for一样
# while ' ' in list1:
# list1.remove(' ')
# print(list1)

# 去除字符串中间的空格


# 第一种方法:使用replace,但是这种方法很笨,如果字符串中间有一万个空格怎么办,也要全部打出来吗
# a = 'hello world'
# b = a.replace(' ','')
# print(b)

# 第二种方法:
# a = 'hello world'
# a = list(a)
# for x in a:
# if ' ' in a:
# a.remove(' ')
# bb = ''.join(a)
# print(bb)

# a = 'hello wor ld'
# # aa = a.split()
# # print(aa)
# # print(''.join(aa))
# print(''.join(a.split()))

# list1 = ['122','2333','3444',' ','422',' ',' ','54',' ']
# for x in list1:
# for i,j in enumerate(list1):
# print(i,j)
# if x == ' ':
# list1.remove(' ')
# print(list1)
# print('***************************************')
# print(list1)

# 去除列表中的重复元素


# 方法一: 对列表进行怕羞,从头到尾进行比较,遇到重复的元素就删除,否则指针向右移动一位
#方法1,逻辑复杂,临时变量保存值消耗内存,返回结果破坏了原列表顺序,效率最差
# def deleteDuplicatedElement(l):
# l.sort()
# length = len(l)
# firstItem = l[0]
# for x in range(1,length-1):
# # if x < length - 2:
# # if l[x] == l[x+1]:
# # l.remove(l[x])
# # return l
# currentItem = l[x]
# if firstItem == currentItem:
# l.remove(currentItem)
# else:
# firstItem = currentItem
# return l

# print(deleteDuplicatedElement(['d','d','1','2','1','4']))

# def deleteDuplicatedElement(l):
# l.sort()
# length = len(l)
# lastItem = l[length-1]
# for x in range(length-2,-1,-1):
# currentItem = l[x]
# if lastItem == currentItem:
# l.remove(currentItem)
# else:
# lastItem = currentItem
# return l

# print(deleteDuplicatedElement(['python','r','r','g','g','g','t','y','g','n']))

# 方法二:设一临时列表保存结果,从头遍历原列表,如临时列表中没有当前元素则追加:
#方法2,直接调用append方法原处修改列表,逻辑清晰,效率次之
# def deleteDuplicatedElement(l):
# ll = []
# for x in l:
# if x in ll:
# continue
# else:
# ll.append(x)
# return ll

# print(deleteDuplicatedElement(['python','r','r','g','g','g','t','y','g','n']))

# 方法三:利用Python中集合元素唯一性特点,将列表转换为集合,然后转换为列表输出即可
#方法3,极度简洁,使用python原生方法效率最高,但列表原有顺序被打乱
# def deleteDuplicatedElement(l):
# return sorted(list(set(l)),key=l.index)

# print(deleteDuplicatedElement(['python','r','r','g','g','g','t','y','g','n']))

来源:https://blog.csdn.net/Fortune_yang/article/details/78902762

标签:Python,列表,去重,空字符
0
投稿

猜你喜欢

  • 如何爬取通过ajax加载数据的网站

    2022-05-03 15:06:01
  • CSS网页布局扩展小技巧

    2010-06-03 12:13:00
  • XMLTextReader和XmlDocument读取XML文件的比较

    2008-09-05 16:04:00
  • 支持汉转拼和拼音分词的PHP中文工具类ChineseUtil

    2023-11-08 10:48:13
  • 经典SQL语句大全第1/2页

    2024-01-28 09:01:56
  • golang 切片截取参数方法详解

    2024-04-25 15:31:22
  • SQL指令植入式攻击的危害及其防范措施

    2008-12-19 14:07:00
  • python使用re模块爬取豆瓣Top250电影

    2023-10-11 17:28:38
  • Golang JSON的进阶用法实例讲解

    2024-02-20 00:24:00
  • python中arrow库用法大全

    2021-08-25 06:48:44
  • JavaScript 判断浏览器类型及版本

    2024-05-13 10:36:39
  • Python将阿拉伯数字转换为罗马数字的方法

    2022-11-15 16:07:14
  • Python读取图片为16进制表示简单代码

    2021-07-24 09:34:15
  • Linux下实现MySQL数据备份和恢复的命令使用全攻略

    2024-01-18 11:44:46
  • aspjpeg组件通用加水印函数代码

    2011-04-04 10:32:00
  • 在python里使用await关键字来等另外一个协程的实例

    2021-03-01 19:10:16
  • python reverse反转部分数组的实例

    2021-09-16 05:30:11
  • Django查询优化及ajax编码格式原理解析

    2021-04-26 02:04:27
  • Python socket如何解析HTTP请求内容

    2022-05-06 20:09:23
  • keras实现多种分类网络的方式

    2023-07-10 13:37:49
  • asp之家 网络编程 m.aspxhome.com