1、有时候我们可能想让字符串倒序输出,下面给出几种方法
方法一:通过索引的方法
1
2
3
|
>>> strA = "abcdegfgijlk" >>> strA[:: - 1 ] 'kljigfgedcba' |
方法二:借组列表进行翻转
1
2
3
4
5
6
7
|
#coding=utf-8 strA = raw_input ( "请输入需要翻转的字符串:" ) order = [] for i in strA: order.append(i) order.reverse() #将列表反转 print ''.join(order) #将list转换成字符串 |
执行结果:
请输入需要翻转的字符串:abcdeggsdd
ddsggedcba
2、分别输出字符串中奇数坐标和偶数坐标的字符
最简单的方法是根据序列的切片来实现。
1
2
3
4
5
6
7
8
9
10
11
|
>>> str_a = "1a2b3c4d5e6f" * * * 输出奇数位的字符 * * * >>> for i in str_a[:: 2 ]: ... print i, ... 1 2 3 4 5 6 * * * 输出偶数位的字符 * * * >>> for j in str_a[ 1 :: 2 ]: ... print j, ... a b c d e f |
当然我们也可以使用下面的方法实现,但是这种方法就比较麻烦了。
1
2
3
4
5
6
7
8
9
10
11
12
13
14
|
#coding=utf-8 def oddEven(strA): odd = [] even = [] for i in range ( len (strA)): if i % 2 = = 0 : even.append(strA[i]) else : odd.append(strA[i]) print "偶数项:" , ''.join(even) print "奇数项:" , ''.join(odd) strA = "1a2b3c4d5e6f7g8h9j" print "原字符串:" , strA oddEven(strA) |
执行结果:
原字符串: 1a2b3c4d5e6f7g8h9j
偶数项: 123456789
奇数项: abcdefghj
值得注意的是:
在我们平常的编程过程中,一定要避免直接使用编程语言的关键字作为变量名,尤其是Python语言中几乎所有的对象都可以赋值,如果将系统环境给的变量赋值经常会造成很多奇怪的问题,所以一定要养成好的编程习惯。
最典型一个就是关于isinstance()函数的报错,代码写的是没有问题,但是就是会报错,说明在这代码之前str肯定被当着变量赋过值。
1
2
3
4
5
|
>>> a = '123' >>> isinstance (a, str ) Traceback (most recent call last): File "<stdin>" , line 1 , in <module> TypeError: isinstance () arg 2 must be a class , type , or tuple of classes and types |
总结
以上就是这篇文章的全部内容了,希望本文的内容对大家的学习或者工作具有一定的参考学习价值,谢谢大家对服务器之家的支持。如果你想了解更多相关内容请查看下面相关链接
原文链接:https://blog.csdn.net/seetheworld518/article/details/46756639