6-5.
字符串。
(a)更新你在练习2-7里面的方案,使之可以每次向前向后都显示一个字符串的一个字符。
(b)通过扫描来判断两个字符串是否匹配(不能使用比较操作符或者cmp()内建函数)。
附加题:在你的方案里加入大小写区分。
(c)判断一个字符串是否重现(后面跟前面一致)。附加题:在处理除了严格的回文之外,加入对例如控制符号和空格的支持。
(d)接受一个字符串,在其后面加一个反向的拷贝,构成一个回文字符串。
【参考】
2-7.
循环和字串。从用户那里接受一个字符串输入,然后逐字符显示该字符串。先用while循环实现,然后再用for循环实现。
【2-7的答案】
代码如下:
a = raw_input("Please input a string ... ")
print 'Display in for loop:'
for i in a:
print i,
print '\nDisplay in while loop:'
j = 0
while (j < len(a)):
print a[j]
j = j + 1
【答案】
(a)
代码如下:
a = raw_input("Please input a string ... ")
j = 0
print a[j] + a[j+1],
while (j < len(a) - 2):
j = j + 1
print a[j-1] + a[j] + a[j+1],
j = len(a)
print a[j-2] + a[j-1]
【(a)执行结果】
Please input a string ... apple
ap app ppl ple le
(b)
代码如下:
a = raw_input("Please input a string A... ")
b = raw_input("Please input a string B... ")
trigger = True
if len(a) != len(b):
trigger = False
else:
for i in range(len(a)):
if a != b: trigger = False
if trigger: print 'String A matches string B!'
else: print 'String A does not match string B!'
(c)
代码如下:
a = raw_input("Please input a string ... ")
plalindrome = False
j = 1
while len(a) >= 2 and j