python作业里的问题
str1 = '''拷贝过来的字符串'''list1 = []
for each in str1:
if each not in list1:
if each == '\n':
print('\\n', str1.count(each))
else:
print(each, str1.count(each))
list1.append(each)
我问问第三行是什么意思?拷贝过来的字符串很大一堆乱码,最后执行起来的结果是这样的:
% 6104
$ 6046
@ 6157
_ 6112
^ 6030
# 6115
) 6186
& 6043
! 6079
+ 6066
] 6152
* 6034
} 6105
[ 6108
( 6154
{ 6046
\n 1219
G 1
O 2
D 1
L 1
U 1
C 1
K 1 这段代码用来统计字符串中各个字符出现的次数
这里是统计换行符个数用的:
if each == '\n':
结果
\n 1219
换行符有1219个 逃兵 发表于 2021-3-3 21:30
这段代码用来统计字符串中各个字符出现的次数
这里是统计换行符个数用的:
我问问,那其他字符是怎么计算过来的呢? xiaozhuzhuZzzz 发表于 2021-3-4 19:59
我问问,那其他字符是怎么计算过来的呢?
也就是说字符是隐藏了一部分的,对吧?谢谢你 str1 = '''拷贝过来的字符串'''
list1 = []
for each in str1: #遍历字符串str1
if each not in list1: #如果字符不在list1中
if each == '\n': #如果该元素是换行符
print('\\n', str1.count(each)) #打印换行符,打印换行符出现次数
else: #另外的情况(非换行符)
print(each, str1.count(each)) #打印该元素,打印该元素出现次数
list1.append(each) #列表中添加该元素
我写了注释
大致解释一下函数什么意思
给变量str1赋值'''拷贝过来的字符串'''
给list1赋值空列表
遍历str1中的每一个元素
如果该元素不存在于列表list1
则打印该元素和该元素出现的次数
#注意字符串的count方法可以统计某一元素的出现次数
例如:
打印'c'在字符串中出现的次数
str1='ilovefishc.com'
print(str1.count('c'))
2
将该元素加入到list1中
下次循环时,如果该元素已经在list1中,就会被跳过
=======================================
这段代码中主要是将换行符和其他的字符串分开统计
换行符在python中用'\n'来表示
所以出现了一次if-else语句
页:
[1]