本文實例講述了Python實現字符串逆序輸出功能。分享給大家供大家參考,具體如下:
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轉換成字符串 |
執行結果:
1
2
|
請輸入需要翻轉的字符串: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) |
執行結果:
1
2
3
|
原字符串: 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 |
希望本文所述對大家Python程序設計有所幫助。