求代码。。PYTHON

jjandkk 2011-09-19 04:13:16
比如有一个字符串,‘book,pen,mp3,ball,room,ball,pen,phone’

我希望能去除其中的重复词语。(按逗号来区分)
最后得到 ‘book,pen,mp3,ball,room,phone’,顺序不要紧,可以打乱。

不知该如何写,求高效的代码,PYTHON写
...全文
339 29 打赏 收藏 转发到动态 举报
写回复
用AI写文章
29 条回复
切换为时间正序
请发表友善的回复…
发表回复
老咖啡LF 2011-10-28
  • 打赏
  • 举报
回复

>>> s = 'book, pen,mp3,ball,room, ball,pen,phone'
>>> result = ','.join(set( [ i.strip() for i in s.split(',')] ))
>>> s
'book, pen,mp3,ball,room, ball,pen,phone'
>>> result
'ball,room,phone,pen,book,mp3'

jamelee 2011-10-27
  • 打赏
  • 举报
回复
都是牛 来着·····
迷失的空间 2011-10-25
  • 打赏
  • 举报
回复
5楼是高人。。。。
膜拜一下
notax 2011-10-22
  • 打赏
  • 举报
回复
[Quote=引用 22 楼 lgxwqq111 的回复:]

Python code

#!/usr/bin/env python
#Loving Python
#-*- coding=utf-8 -*-
userdict = {}

strings = 'book,pen,mp3,ball,room,ball,pen,phone'
for string in strings.split(','):
if string not in userdict:
userdict[string] = 1
else:
pass

[/Quote]
好烂
atnostyle 2011-10-22
  • 打赏
  • 举报
回复
[Quote=引用 24 楼 lgxwqq111 的回复:]
这个题目本来就是用set做的。。
参见python官方文档的字典数据结构部分http://docs.python.org/tutorial/datastructures.html#dictionaries
[/Quote]

。。。。。。。。
freetstar 2011-10-22
  • 打赏
  • 举报
回复
参见python官方文档的字典数据结构部分http://docs.python.org/tutorial/datastructures.html#dictionaries
freetstar 2011-10-22
  • 打赏
  • 举报
回复
这个题目本来就是用set做的。。
freetstar 2011-10-22
  • 打赏
  • 举报
回复

#!/usr/bin/env python
#Loving Python
#-*- coding=utf-8 -*-
userdict = {}

strings = 'book,pen,mp3,ball,room,ball,pen,phone'
for string in strings.split(','):
if string not in userdict:
userdict[string] = 1
else:
pass

最老的
atnostyle 2011-10-22
  • 打赏
  • 举报
回复
顺便想问一下,如果逗号前后有空格,你是怎么弄的
atnostyle 2011-10-22
  • 打赏
  • 举报
回复
[Quote=引用 17 楼 hjtzdyh 的回复:]

引用 14 楼 atnostyle 的回复:
如果逗号后面有空格,就悲慛了



这样的字符处理你就用正则.
你真是对效率的藐视
[/Quote]

人家只是问问题,或许人家只是向做个简单的工具分析某些文本。
在问题没有前提的情况下,你首先得解决问题
什么都考虑效率的话,那不是 python 的作风。
你不分青红皂白地如此注重效率,有本事用 汇编 C/C++
JacksonLv 2011-10-20
  • 打赏
  • 举报
回复
[Quote=引用 5 楼 iambic 的回复:]
太麻烦了。还是C语言的思维。

Python code
>>> ','.join(set('book,pen,mp3,ball,room,ball,pen,phone'.split(',')))
'ball,room,phone,pen,book,mp3'
[/Quote]
这。。。高手的思维就是不一样,应该是做大项目的。
hjtzdyh 2011-10-20
  • 打赏
  • 举报
回复
[Quote=引用 14 楼 atnostyle 的回复:]
如果逗号后面有空格,就悲慛了
[/Quote]


这样的字符处理你就用正则.
你真是对效率的藐视
xuzhijian17 2011-10-20
  • 打赏
  • 举报
回复
切!!!!!!!
jlfzhz 2011-10-19
  • 打赏
  • 举报
回复
[Quote=引用 5 楼 iambic 的回复:]

太麻烦了。还是C语言的思维。
Python code
>>> ','.join(set('book,pen,mp3,ball,room,ball,pen,phone'.split(',')))
'ball,room,phone,pen,book,mp3'
[/Quote]

我喜欢
albertmp5 2011-10-19
  • 打赏
  • 举报
回复
用正则应该能解决逗号后面带空格的情况。
atnostyle 2011-10-19
  • 打赏
  • 举报
回复
import re
','.join(set(re.split('\s*,\s*', 'book,pen,mp3,ball,room,ball,pen ,phone')))
atnostyle 2011-10-19
  • 打赏
  • 举报
回复
如果逗号后面有空格,就悲慛了
edwardjack 2011-10-17
  • 打赏
  • 举报
回复
牛!!!
aidings 2011-10-13
  • 打赏
  • 举报
回复
[Quote=引用 5 楼 iambic 的回复:]

太麻烦了。还是C语言的思维。
Python code
>>> ','.join(set('book,pen,mp3,ball,room,ball,pen,phone'.split(',')))
'ball,room,phone,pen,book,mp3'
[/Quote]

Nice!
橙子伯爵 2011-10-11
  • 打赏
  • 举报
回复
五楼用的是set吧,高手啊,数据结构
加载更多回复(9)

37,721

社区成员

发帖
与我相关
我的任务
社区描述
JavaScript,VBScript,AngleScript,ActionScript,Shell,Perl,Ruby,Lua,Tcl,Scala,MaxScript 等脚本语言交流。
社区管理员
  • 脚本语言(Perl/Python)社区
  • IT.BOB
加入社区
  • 近7日
  • 近30日
  • 至今

试试用AI创作助手写篇文章吧