【发布时间】:2014-08-31 16:21:39
【问题描述】:
我已经阅读和重新阅读列表推导和循环,我猜这些不是我想的那样。
我试图通过将垃圾变成列表、排序、删除用户定义的垃圾来查找一堆垃圾中的信息。用户输入一个字符,所有匹配的字符都应该被删除。重复。
但是它只删除一个匹配的字符,而不是全部。我相信问题在于我调用函数重新开始的方式,但我猜函数(以及为此调用的类)不像我认为的那样工作
这是我下班后得到的最接近的:(我对此完全不熟悉,所以请放轻松。谢谢。
junk = """
(+*]_}%+(%[{)]({#[+$&&[^@{&#!@%)!+&}$@+@[+&_*!$(+#*%!+$@{{^**{)(]*$(}+
!$%}$$}+@^$$%{}{#!(%[]$!*}+(]!%{(^{&^{$[$)]&&^+{+%!#[([%^!{]]#^@!{#(&]@_$*_&!%(!
+_+}%@#{_}^#*)%*(*}*![}[%_[[^@$&%)([*{_${)$^^_!+}{)!)@_[*$_}*}$#[+}{]*+!^])}&{+#
+!@!^*@}!}&{]*#^@}_[)}#@%!_*#!$}!)[(${+^&!{[&&&*[{}+*+(#+_[}{$$)#([*!)%@^%_]#%$$
(++^+&)}*_&%@#[^^+^&@_%]+$%$#$*)@!(]*+@]}%$$}$(#$&^(%[*([&]*^&}(!#{&_}^(*{(+$#}}
(&_+][&_@)$&$&^[_$(++$^}]&^^*(+*!&#_$]*+@!]+{%^_*+!&}@$!#^{+_#([+@(((*+)[()__}(^
@)](+[$*_(]*$[[&@^(_*#(*&!^{+]_%)_)^[}@]#]%#@+^+[%{_*{!)}#$@#)_$!_(!*+#}%%}+$&$[
%&]!{{%*_!*}&)}$**_{*!#%[[#]!](^^$![#[[*}%(_#^^!%))!_^@)@**@}}(%%{#*%@(((]^%^![&
}!)$]&($)@](+(#{$)_%^%_^^#][{*[)%}+[##(##^{$}^]#&(&*{)%)&][&{]&#]}[[^^&[!#}${@_(
#@}&$[[%]_&$+)$!%{(}$^$}*
"""
junklist = list(junk)
def find():
junklist.sort()
print junklist
x = str(raw_input("what do you want to remove from the list?> "))
return x
def deleteChars(x):
while len(junklist) > 0:
if x in junklist:
junklist.remove(x)
find()
else:
print "not in junklist"
find()
x =find()
【问题讨论】:
标签: list loops python-2.7