python 输出所有大小写字母, range()以及列表切片
所以在寫的時候,只要把它們的ASCII列出,并轉(zhuǎn)化成字符型chr 即可。
print [chr(i) for i in range(65,91)]#所有大寫字母 print [chr(i) for i in range(97,123)]#所有小寫字母 print [chr(i) for i in range(48,58)]#所有數(shù)字還有一種方法,就是使用python中字符串方法string模塊。
''' 遇到問題沒人解答?小編創(chuàng)建了一個Python學(xué)習(xí)交流QQ群:857662006 尋找有志同道合的小伙伴,互幫互助,群里還有不錯的視頻學(xué)習(xí)教程和PDF電子書! ''' #-*- coding:utf-8 -*- import string #導(dǎo)入string這個模塊 print string.digits #輸出包含數(shù)字0~9的字符串 print string.letters #包含所有字母(大寫或小寫)的字符串 print string.lowercase #包含所有小寫字母的字符串 print string.uppercase #包含所有大寫字母的字符串 print string.punctuation #包含所有標(biāo)點的字符串 print string.ascii_letters #與string.letters一樣輸出:
0123456789 abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ abcdefghijklmnopqrstuvwxyz ABCDEFGHIJKLMNOPQRSTUVWXYZ !"#$%&'()*+,-./:;<=>?@[\]^_`{|}~ abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZrange()以及列表切片
range()函數(shù)配合循環(huán)一塊使用很方便,今天來整理一下這個函數(shù)的主要用法,以及幾個小例子
首先來看一下函數(shù)原型,非常簡單:
range(start,end [,step])
或者連start都省略掉:
range(end)
其中,start表示開始點,end表示結(jié)束點,真正結(jié)束的位置是end的前一個值,step表示步長。
例如:
如果只傳入一個參數(shù):
print(list(range(5))) #輸出結(jié)果是 [0, 1, 2, 3, 4] ,這時候默認(rèn)從0開始rang的這些使用,我們可以同列表的遍歷結(jié)合起來,比如對一個列表進(jìn)行遍歷訪問:
''' 遇到問題沒人解答?小編創(chuàng)建了一個Python學(xué)習(xí)交流QQ群:857662006 尋找有志同道合的小伙伴,互幫互助,群里還有不錯的視頻學(xué)習(xí)教程和PDF電子書! ''' #首先我用一個range生成一個列表,其中包含0~9 10個元素 list1 =list(range(10)) # #使用range的方式進(jìn)行遍歷: for i in range(len(list1)):print(list1[i])#當(dāng)然這種情況我們一般都是直接使用 for value in list1 就可以了 #如果使用切片,訪問列表的一部分for i in range(int(len(list1)/2)):print(list1[i])#這樣我們就可以得到列表中前一半元素,其他部分同理有的時候我們還會用到一個列表的逆序,使用range可以這樣:
list1 =list(range(10)) for i in range(len(list1)-1,0,-1):print(list1[i]) #注意這個地方開始的位置是len-1,因為我們使用的列表的下標(biāo),其實這里的使用與C語言是一致的,步長設(shè)置為-1 #就相當(dāng)于我們在for循環(huán)的 i--了使用循環(huán)的方式,我們可以在每次循環(huán)中對數(shù)據(jù)進(jìn)行一些操作,但是如果僅僅是得到這些數(shù)據(jù),我們可以利用列表的切片slide來做,切片的方式非常靈活,例如比較簡單的:
''' 遇到問題沒人解答?小編創(chuàng)建了一個Python學(xué)習(xí)交流QQ群:857662006 尋找有志同道合的小伙伴,互幫互助,群里還有不錯的視頻學(xué)習(xí)教程和PDF電子書! ''' list1 =list(range(10)) print(list1[:]) # [0, 1, 2, 3, 4, 5, 6, 7, 8, 9] print(list1[3:]) # [3, 4, 5, 6, 7, 8, 9] print(list1[3:5]) # [3, 4] print(list1[1:5:2]) # [1, 3]從這里我們可以看出切片的使用方式與range大同小異,都是三個參數(shù),分別控制開始,結(jié)束以及步長,在range中我們可以使用 -1 ,那么同理,在切片中,同樣如此,對于每一個列表項,不僅僅有一個正向的序號,還有一個反向的序號,最后一個元素可以使用list1[-1]來表示,倒數(shù)第二個元素就是list1[-2]….:
print(list1[1:-1]) # 這里表示從第一個元素到最后一個元素如果逆序輸出的話:
print(list1[-1::-1]) #或者簡記為: print(list1[::-1])接下來是我之前遇到的一個問題,如何在一個列表中保存A-Z或者Z-A?
''' 遇到問題沒人解答?小編創(chuàng)建了一個Python學(xué)習(xí)交流QQ群:857662006 尋找有志同道合的小伙伴,互幫互助,群里還有不錯的視頻學(xué)習(xí)教程和PDF電子書! ''' list2 = [] for i in range(ord('A'),ord('A')+26):list2.append(chr(i)) print(list2)list3 = [chr(ord('A')+x) for x in range(26)] print(list3)這兩種方法都可以生成一個包含A-Z的列表,對于這個問題,如果使用過其他語言,首先可能會使用int(‘A’)獲取A的ASCII,但是在Python中卻會報錯,因為這里int()函數(shù)是默認(rèn)基與十進(jìn)制的,對于字母轉(zhuǎn)化為數(shù)字,有函數(shù)ord可以使用,有字母轉(zhuǎn)化回ASCII則可以使用chr()函數(shù),第二種方式是使用了列表生成式的方式,寫起來比較簡單,除了這些方法之外,還可以使用map()函數(shù)對列表的每一個值進(jìn)行處理,在此不再介紹。
end~
總結(jié)
以上是生活随笔為你收集整理的python 输出所有大小写字母, range()以及列表切片的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: python之super
- 下一篇: Python爬虫数据分析三剑客:Nump