由于问题比较简单, 这里就直接把脚本贴进来。
#!/bin/python
# -*- coding=utf8 -*-
print """任务: 每次处理一个字符"""
#---------FIRST
print """\n第一种方法:使用for循环,这种方法的优点是, 可以增加其它的逻辑,例如选取某一些字符"""
str = "This is a test string, what you should do is to deal one charactor per time"
list1 = []
for s in str:
if s != " ": #若为空格,则不放入列表
list1.append(s)
print "First result is :\n %s" % list1
#---------SECOND
print """\n第二种方法:列表解析,优点是语法简洁"""
list2 = [ s for s in str ]
print "Second result is :\n %s" % list2
#----------THIRD
print """\n第三种方法:直接调用内建的list,用字符串作为参数"""
print "Third result is :\n %s" % list(str)
#----------FOURTH
print """\n第四种方法:使用map调用处理函数,优点是函数可以事先定义,逻辑上比较清楚"""
def fun(s):
print s.replace('i','1')
map(fun(str),str)
#----------OTHERS
print """\n还可以利用sets.Set取交集"""
import sets
magic_char = sets.Set(str)
popins_char = sets.Set("I really don't want to type these words")
print "Result is :%s" % ''.join(magic_char& popins_char) #取交集