|
马上注册,结交更多好友,享用更多功能^_^
您需要 登录 才可以下载或查看,没有账号?立即注册
x
alphabet = 'abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ'
number = '0123456789'
space = ' '
def count(one,two):
oywzm = 0
osz = 0
okg = 0
oqtzf = 0
for each_one in one:
if each_one in alphabet:
oywzm += 1
elif each_one in number:
osz += 1
elif each_one in space:
okg += 1
else:
oqtzf += 1
print('第1个字符串共有:英文字母 %d 个,数字 %d 个,空格 %d 个,其他字符 %d 个。' % oywzm, osz, okg, oqtzf)
tywzm = 0
tsz = 0
tkg = 0
tqtzf = 0
for each_two in two:
if each_two in alphabet:
tywzm += 1
elif each_two in number:
tsz += 1
elif each_two in space:
tkg += 1
else:
tqtzf += 1
print('第1个字符串共有:英文字母 %d 个,数字 %d 个,空格 %d 个,其他字符 %d 个。' % tywzm, tsz, tkg, tqtzf)
count('I love fishc.com.','I love you, you love me.')
----------------------------------------------------------------------------------------------------------------------------------------------
两个问题:
1.为什么会报错
2.两个for循环重复了,有没有办法不重复QAQ
报错是因为你 % 号格式化时候忘记加括号了
我帮你合并了你看代码吧:
- alphabet = 'abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ'
- number = '0123456789'
- space = ' '
- def count(one,two):
- oywzm = 0
- osz = 0
- okg = 0
- oqtzf = 0
- for i in range(2):
- for each_one in [one,two][i]:
- if each_one in alphabet:
- oywzm += 1
- elif each_one in number:
- osz += 1
- elif each_one in space:
- okg += 1
- else:
- oqtzf += 1
- print('第%d个字符串共有:英文字母 %d 个,数字 %d 个,空格 %d 个,其他字符 %d 个。' % (i+1,oywzm, osz, okg, oqtzf))
- count('I love fishc.com.','I love you, you love me.')
复制代码
|
|