python ord()與chr()用法以及區別


ord()函數主要用來返回對應字符的ascii碼,chr()主要用來表示ascii碼對應的字符他的輸入時數字,可以用十進制,也可以用十六進制。

例如:print ord('a)

          #97

          print chr(97)

         #a

         print chr(0x61)

        #a

一個簡單的程序來靈活運用。

str1='asdfasdf123123'

for i in rang(len(str1)):

     print  chr(ord(str1[i])-1)

#以上程序主要實現對字符串str1里面所有的字符,轉換成ascii碼中比他們小一位的字符。

題目:兩個乒乓球隊進行比賽,各出三人。甲隊為a,b,c三人,乙隊為x,y,z三人。已抽簽決定比賽名單。有人向隊員打聽比賽的名單。a說他不和x比,c說他不和x,z比,請編程序找出三隊賽手的名單。

for i in range(ord('x'),ord('z') + 1):
    for j in range(ord('x'),ord('z') + 1):
        if i != j:
            for k in range(ord('x'),ord('z') + 1):
                if (i != k) and (j != k):
                    if (i != ord('x')) and (k != ord('x')) and (k != ord('z')):
                        print 'order is a -- %s\t b -- %s\tc--%s' % (chr(i),chr(j),chr(k))

  

 應用:

可以用來生成隨機驗證碼:

import random
# 1X3Y3ZX
def make_code(size=7):
    res = ''
    for i in range(size):
        # 循環一次則得到一個隨機字符(字母/數字)
        s = chr(random.randint(65, 90))
        num = str(random.randint(0, 9))
        res += random.choice([s, num])
    return res

res=make_code()
print(res)

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM