最近在做一些编程的练习,锻炼一下编程的思维,之所以要这样做,原因有二,首先是因为喜欢,觉得编程很好玩,其次是工作中也有需要。
先来两个简单的,练习一下:
1、计算字符串最后一个单词的长度
输入:输入一串字符,单词以空格隔开
输出:整数N,最后一个单词长度
方法1:
string=raw_input()
l=string.split(" ")
print len(l[-1])
方法2:
import sys
for line in sys.stdin:
s = line.split()
print len(s[-1])
# 结束输入是按:ctrl+d
我觉得这道题目考察的点是字符串的分隔,以及如何获取一个列表的最后一个元素,我看了一些人的代码,发现有用循环的,虽然可以解决问题,但如果应用在实际问题中会消耗大量的资源。
2、计算字符个数
接受一个有字母和数字以及空格组成的字符串,和一个字符,然后输出该字符串中含有该字符的个数,不区分大小写。
输入:输入一个有字母和数字以及空格组成的字符串,和一个字符。
输出:输出该字符串中含有该字符的个数,不区分大小写。
方法1:
s=""
ch=""
chSum=0
s=raw_input()
ch=raw_input()
for ch1 in s:
if(ch1.upper()==ch.upper()):
chSum+=1
print chSum
方法2:
string=raw_input().upper()
a=raw_input().upper()
print string.count(a)
方法3
a = raw_input()
b = raw_input()
if isinstance(a, str) and isinstance(b, str):
a = a.lower()
b = b.lower()
print a.count(b)
else:
pass
方法4
while True:
try:
s = raw_input().lower()
c = raw_input().lower()[0]
print s.count(c)
except EOFError:
break
这个题目应该在考察匹配字符串的方法,以及处理字符串是否考虑大小写。
解答这个题目的方法很多,但是需要注意规范,养成良好的编程习惯。