求教
小甲鱼python 函数第20讲,动动手,第一题中,为什么我的答案进入了死循环?"""%%$@_$^__#)^)&!_+]!*@&^}@[@%]()%+$&[(_@%+%$*^@$^!+]!&_#)_*}{}}!}_]$[%}@[{_@#_^{*
@##&{#&{&)*%(]{{([*}@[@&]+!!*{)!}{%+{))])[!^})+)$]#{*+^((@^@}$[**$&^{$!@#$%)!@(&
+^!{%_$&@^!}$_${)$_#)!({@!)(^}!*^&!$%_&&}&_#&@{)]{+)%*{&*%*&@%$+]!*__(#!*){%&@++
!_)^$&&%#+)}!@!)&^}**#!_$([$!$}#*^}$+&#[{*{}{((#$]{[$[$$()_#}!@}^@_&%^*!){*^^_$^
]@}#%[%!^[^_})+@&}{@*!(@$%$^)}(@_{{(*#%!%%+*)^+#%}$+_]#}%!**#!^_
)@)$%%^{_%!@(&{!}$_$[)*!^&{}*#{!)@})!*{^&[&$#@)*@#@_@^_#*!@_#})+[^&!@*}^){%%{&#@
@{%(&{+(#^{@{)%_$[+}]$]^{^#(*}%)@$@}(#{_&]#%#]{_*({(])$%[!}#@@&_)([*]}$}&${^}@(%
(%[@%!}%*$}(*@)}"""
list1 = []
for each in str1:
if each notin list1:
print(each,str1.count(each)) 你遇到死循环的原因是因为你没有将字符逐个添加到`list1`中。你需要在`for`循环内部添加`list1.append(each)`这一行代码。这样,每当遍历到一个新字符时,它会被添加到`list1`中,然后你才可以判断下一个字符是否已经在`list1`中存在。
以下是你的代码的修正版本:
str1 = """%%$@_$^__#)^)&!_+]!*@&^}@()%+$&!&_#)_*}{}}!}_]$[%}@{{([*}@+!!*{)!}{%+{))])#{*+^((@^@}${+)%*{&*%*&@%$+]!*__(#!*){%&@++
!_)^$&&%#+)}!@!)&^}**#!_$([$!$}#*^}$+&#{[$@}#%[%!^[^_})+@&}{@*!(@$%$^)}(@_{{(*#%!%%+*)^+#%}$+_]#}%!**#!^_
)@)$%%^{_%!@(&{!}$_$[)*!^&{}*#{!)@})!*{^&[&$#@)*@#@_@^_#*!@_#})+[^&!@*}^){%%{&#@
{%(&{+(#^{@{)%_$$]^{^#(*}%)@$@}(#{_&]#%#]{_*({(])$%[!}#@@&_)(}$}&${^}@(%
(%[@%!}%*$}(*@)}"""
list1 = []
for each in str1:
if each not in list1:
list1.append(each)
print(each, str1.count(each))
希望能帮到你!
以上回复来自 FishC AI 小助理,如未能正确解答您的问题,请继续追问。
页:
[1]