python在处理字符串的时候有很多快捷的方式:
比如我们在比较两个长度相同的字符串时,我们可以有多种算法,比如把一个字符串拆成一个列表(或者一个单词);
> a='asdfasdfasdfasdf'
>>> list(a)
['a', 's', 'd', 'f', 'a', 's', 'd', 'f', 'a', 's', 'd', 'f', 'a', 's', 'd', 'f']
>>> list(a)
['a', 's', 'd', 'f', 'a', 's', 'd', 'f', 'a', 's', 'd', 'f', 'a', 's', 'd', 'f']
>>>
然后比较两个列表是否是相互属于对方,
第二中方法是:将这些字符串按照字母表顺序排列,比较两个单词是否相同!
这个是acm的一道题:做的有问题,先发上来以后再改:
import string
def shuru():
c=1
a=[]
i=0
while(c):
f=raw_input()
if f=='XXXX':
c=0
else:
a.append(f)
print a
return a
def shuchu():
b=[]
c=1
while(c):
g=raw_input()
if g=='XXXX':
c=0
else:
b.append(g)
print b
return b
def bijiao(a,b):
m=1
aa=0
bb=0
aaa=len(a)-1
bbb=len(b)-1
while(m):
u=False
for i in range(0,len(b)):
aa=aa+1
if u==False and i>=1:
print 'NOT A VALID WORD'
print '******'
for j in range(0,len(a)-1):
bb=bb+1
f=list(a[j])
g=list(b[i])
c=len(f)
d=len(g)
if c==d:
if set(g).issubset(set(f)) :
print b[i]
print '******'
u=True
if aa==len(b):
m=0
if __name__=='__main__':
a=shuru()
b=shuchu()
bijiao(a,b)
2万+

被折叠的 条评论
为什么被折叠?



