鱼C论坛

 找回密码
 立即注册
查看: 2222|回复: 9

[已解决]python零基础教程20讲的动动手

[复制链接]
发表于 2020-10-18 14:54:59 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能^_^

您需要 登录 才可以下载或查看,没有账号?立即注册

x
  1. str1 = '''拷贝过来的字符串'''
  2. list1 = []

  3. for each in str1:
  4.     if each not in list1:
  5.         if each == '\n':
  6.             print('\\n', str1.count(each))
  7.         else:
  8.             print(each, str1.count(each))
  9.         list1.append(each)
复制代码

改成
  1. str1 = input('请输入要检测的字符串:')
  2. list1 = []

  3. for each in str1:
  4.     if each not in list1:
  5.         if each == '\n':
  6.             print('\\n', str1.count(each))
  7.         else:
  8.             print(each, str1.count(each))
  9.         list1.append(each)
复制代码

为什么最后统计的数据都是1?
最佳答案
2020-10-18 17:13:52

input输入的时候检测到回车换行就不在进行了,我猜测你这个就是因为那一串字符里有回车或空行
小甲鱼最新课程 -> https://ilovefishc.com
回复

使用道具 举报

发表于 2020-10-18 14:59:06 | 显示全部楼层
代码没问题啊
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2020-10-18 15:02:58 | 显示全部楼层
代码没有改动:
  1. str1 = input('请输入要检测的字符串:')
  2. list1 = []

  3. for each in str1:
  4.     if each not in list1:
  5.         if each == '\n':
  6.             print('\\n', str1.count(each))
  7.         else:
  8.             print(each, str1.count(each))
  9.         list1.append(each)
复制代码


测试结果:
  1. 请输入要检测的字符串:多输入几次几次几次
  2. 多 1
  3. 输 1
  4. 入 1
  5. 几 3
  6. 次 3
复制代码
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2020-10-18 15:48:25 | 显示全部楼层
请教,代码中
       if  each == ‘\n’    这条语句作用是什么。
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2020-10-18 16:41:37 | 显示全部楼层
昨非 发表于 2020-10-18 15:02
代码没有改动:

%%$@_$^__#)^)&!_+]!*@&^}@[@%]()%+$&[(_@%+%$*^@$^!+]!&_#)_*}{}}!}_]$[%}@[{_@#_^{*
@##&{#&{&)*%(]{{([*}@[@&]+!!*{)!}{%+{))])[!^})+)$]#{*+^((@^@}$[**$&^{$!@#$%)!@(&

@[(&+_{@#^&{$$[#]&@!$#$%$%(((_)!)]]*}(@*^$)!!+%_!!^__@@}[*^)%@**@!@}&!{&%+!#!(^@
@{^#*)+$!@$&([++@$@_##+%}_[{}_#{@!@@#$(@&]^]*%!+$)(+{[+^%^{+!}!&$[&#@}_&{%![^#*+
#]@(&}]!@[}+_]!{]%+&)^{[@[__}}$$&!]#)_!(**@(+*!^}+#)}!)@$^![^){!#$[*{%&![!^^^_{[
*[*#_*&%)&)}@%!@!&#]+%^#))#_#(#]*#*!@^{()&}[{%(&[^)@$^%(}&#@(%+@%{%%]*{$(@%$]*$]
}(}@$(!!^]+)%($)_[!@%#{[@#((%+]*!*)%([]{(}*$]%#^*#_@@}+_*{$+(%]}$@{!#*%*[[^!{)&#
#*!#^*+[_!$^%&)%$_@%}[%}#{{}%!$)[%+[[&%)^(@(_^)!*@#^#@@+@[(@)$(^&_}%%)@{$%+){(+[
.....
课后题给的这一段数字,测试结果都是1
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2020-10-18 16:42:24 | 显示全部楼层
Qming 发表于 2020-10-18 16:41
%%$@_$^__#)^)&!_+]!*@&^}@[@%]()%+$&[(_@%+%$*^@$^!+]!&_#)_*}{}}!}_]$[%}@[{_@#_^{*
@##&{#&{&)*%(]{{ ...

这一段符号
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2020-10-18 16:47:00 | 显示全部楼层
siven-siven 发表于 2020-10-18 15:48
请教,代码中
       if  each == ‘\n’    这条语句作用是什么。

/n 相当于回车,如果不用//n的话最后的结果
会显示成
  1. % 6104
  2. $ 6046
  3. @ 6157
  4. _ 6112
  5. ^ 6030
  6. # 6115
  7. ) 6186
  8. & 6043
  9. ! 6079
  10. + 6066
  11. ] 6152
  12. * 6034
  13. } 6105
  14. [ 6108
  15. ( 6154
  16. { 6046

  17. 1219
复制代码
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2020-10-18 17:02:24 | 显示全部楼层
Qming 发表于 2020-10-18 16:41
%%$@_$^__#)^)&!_+]!*@&^}@[@%]()%+$&[(_@%+%$*^@$^!+]!&_#)_*}{}}!}_]$[%}@[{_@#_^{*
@##&{#&{&)*%(]{{ ...

你复制字符串的时候别加空行(回车),代码逻辑上室内有问题的
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 1 反对 0

使用道具 举报

 楼主| 发表于 2020-10-18 17:10:18 | 显示全部楼层
昨非 发表于 2020-10-18 17:02
你复制字符串的时候别加空行(回车),代码逻辑上室内有问题的

emm...谢谢
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2020-10-18 17:13:52 | 显示全部楼层    本楼为最佳答案   

input输入的时候检测到回车换行就不在进行了,我猜测你这个就是因为那一串字符里有回车或空行
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2025-6-28 10:42

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表