Python中的chr()函数与ord()函数解析

目录
  • chr()函数与ord()函数解析
    • chr()函数
    • ord()函数
    • 应用:凯撒密码的加密和解码
  • ord()函数与chr()函数的区别

chr()函数与ord()函数解析

chr()函数

用一个范围在 range(256)内的(就是0~255)整数作参数,返回一个对应的字符。返回值是当前整数对应的 ASCII 字符。

该函数的返回值为字符串形式。例如,输入:chr(90) ,输出为 ‘Z’ 。

ord()函数

与chr()函数对应,输入ASCII字符表中字符的字符串形式,返回在字符表中的排序位次。

例如,输入:ord(“Z”),输出为 90 。

应用:凯撒密码的加密和解码

以加密为例,字符转换成数字,经过凯撒密码规则运算后再转换为对应字符。

s = input()
t = ""
for c in s:
    if 'a' <= c <= 'z':
        t += chr( ord('a') + ((ord(c)-ord('a')) + 3 )%26 )
    elif 'A' <= c <= 'Z':
        t += chr( ord('A') + ((ord(c)-ord('A')) + 3 )%26 )
    else:
        t += c
print(t)

ord()函数与chr()函数的区别

在python中,今天遇到ord()和chr()函数,不是很明白,就查了下资料,当我们需要对字符串进行转化为整型时,ord()函数是用来返回单个字符的ASCII值(0-255)或者是UNICODE值。

>>> ord("A")
65
>>> ord("a")
97
>>> ord("8")
56

对应的chr()函数是把一个整数(0-255)转化为对应的ASCII值。

chr(97)
'a'
>>> chr(65)
'A'

下面是一个转化字符串的函数代码:

def FormatStrToInt(target):
    for i in range(len(target)):
        temp=ord(target[i])
        print (temp)
    return
 if __name__=="__main__":
     FormatStrToInt("abcdefghijk")

>>97
98
99
100
101
102
103
104
105
106
107

以上为个人经验,希望能给大家一个参考,也希望大家多多支持我们。

(0)

相关推荐

  • Python3内置函数chr和ord实现进制转换

    python的内置函数中,有一对函数:chr 和 ord,有着相反的功能. 1. chr(x):用一个数值作参数,返回一个对应的unicode字符,该参数的有效范围是从0到1114111(16进制时为0x10FFFF),参数可以是十进制,也可以是十六进制. print(chr(105)) # ---> i print(chr(0x9980)) # ---> 汉字:馀 print(chr(0x0030)) # ---> 0 print(chr(8364)) # ---> € prin

  • python中 chr unichr ord函数的实例详解

    python中 chr unichr ord函数的实例详解 chr()函数用一个范围在range(256)内的(就是0-255)整数作参数,返回一个对应的字符.unichr()跟它一样,只不过返回的是Unicode字符,这个从Python 2.0才加入的unichr()的参数范围依赖于你的python是如何被编译的.如果是配置为USC2的Unicode,那么它的允许范围就是range(65536)或0x0000-0xFFFF:如果配置为UCS4,那么这个值应该是range(1114112)或0x

  • 浅谈Python中chr、unichr、ord字符函数之间的对比

    ord是unicode ordinal的缩写,即编号 chr是character的缩写,即字符 ord和chr是互相对应转换的. 但是由于chr局限于ascii,长度只有256,于是又多了个unichr. >>c = u'康' >>c u'\u5eb7' >>ord(c) 24747 >>chr(24247) ValueError: chr() arg not in range(256) >>unichr(24247) u'\u5eb7' chr

  • Python中的chr()函数与ord()函数解析

    目录 chr()函数与ord()函数解析 chr()函数 ord()函数 应用:凯撒密码的加密和解码 ord()函数与chr()函数的区别 chr()函数与ord()函数解析 chr()函数 用一个范围在 range(256)内的(就是0-255)整数作参数,返回一个对应的字符.返回值是当前整数对应的 ASCII 字符. 该函数的返回值为字符串形式.例如,输入:chr(90) ,输出为 ‘Z’ . ord()函数 与chr()函数对应,输入ASCII字符表中字符的字符串形式,返回在字符表中的排序

  • python中string模块各属性以及函数的用法介绍

    任何语言都离不开字符,那就会涉及对字符的操作,尤其是脚本语言更是频繁,不管是生产环境还是面试考验都要面对字符串的操作. python的字符串操作通过2部分的方法函数基本上就可以解决所有的字符串操作需求: • python的字符串属性函数 • python的string模块 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 1.字符串属性函数  系统版本:CentOS release 6.2 (Final)2.6.32-220.

  • python中map、any、all函数用法分析

    本文实例讲述了python中map.any.all函数用法.分享给大家供大家参考.具体分析如下: 最近想学python,就一直比较关注python,昨天在python吧看到有个帖子提问怎么在python中怎么判断密码是否符合规范,回帖中有很多用循环的,除此外还有一个没有用循环,代码非常简练,下面是代码: def volid(pwd): a = any(map(str.isupper,pwd)) b = any(map(str.islower,pwd)) c = any(map(str.isdig

  • 浅谈Python中带_的变量或函数命名

    Python 的代码风格由 PEP 8 描述.这个文档描述了 Python 编程风格的方方面面.在遵守这个文档的条件下,不同程序员编写的 Python 代码可以保持最大程度的相似风格.这样就易于阅读,易于在程序员之间交流. python中的标识符可以包含数字.字母和_,但必须以字母或者_开头,其中以_开头的命名一般具有特殊的意义. 前后均带有双下划线__的命名 一般用于特殊方法的命名,用来实现对象的一些行为或者功能,比如__new__()方法用来创建实例,__init__()方法用来初始化对象,

  • python中的字典操作及字典函数

    字典 dict_fruit = {'apple':'苹果','banana':'香蕉','cherry':'樱桃','avocado':'牛油果','watermelon':'西瓜'} 字典的操作 #字典的遍历方式 #默认遍历(遍历key) for value in dict_fruit: print(value) ''''' 遍历出的值: watermelon apple cherry avocado banana ''' #使用key遍历(与默认遍历一样) for key in dict_f

  • python中hasattr()、getattr()、setattr()函数的使用

     引言: 在阅读源码时,有很多简写的形式,其中一个比较常用的就是getattr()用来调用一个类中的变量或者方法,相关联的hasattr().getattr().setattr()函数的使用也一并学习了一下. 正文: 1. hasattr(object, name) 判断object对象中是否存在name属性,当然对于python的对象而言,属性包含变量和方法:有则返回True,没有则返回False:需要注意的是name参数是string类型,所以不管是要判断变量还是方法,其名称都以字符串形式传

  • 简单了解python中的f.b.u.r函数

    这篇文章主要介绍了简单了解python中的f.b.u.r函数,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下 f/format() 格式化操作,相当于format()函数 案例如下: name = 'wy' l = f'{name}' print(l) # 打印出的l是 wy b:bytes 二进制 拓展: encode和decode也可以在二进制和字符串之间转换 u/U 表示unicode字符串 不是仅仅是针对中文, 可以针对任何的字符串,代表

  • python中for用来遍历range函数的方法

    栗子:计算斐波那契数列(任一个数都是前两个数之和的数字序列) Python2.7实现代码如下: <strong><span style="font-size:14px;">fibs=[0,1] //初始化定义数列值 for i in range(20): //循环遍历20次 fibs.append(fibs[-2]+fibs[-1]) print fibs //打印出22位的斐波那契数列: </span></strong> 注:源码中的i

  • 对python中两种列表元素去重函数性能的比较方法

    测试函数: 第一种:list的set函数 第二种:{}.fromkeys().keys() 测试代码: #!/usr/bin/python #-*- coding:utf-8 -*- import time import random l1 = [] leng = 10L for i in range(0,leng): temp = random.randint(1,10) l1.append(temp) print '测试列表长度为:',leng #first set last = time.

  • Python中非常实用的Math模块函数教程详解

    目录 math模块常数 1. 圆周率 2. Tau (τ) 3. 欧拉数 4. 无限 5. 不是数字 算术函数 1. factorial() 2. ceil() 3. floor() 4. trunc() 5. isclose() 幂函数 1. exp() 2. 对数函数 其他重要的math模块功能 由于该math模块与 Python 版本一起打包,因此您不必单独安装它,直接导入: import math math模块常数 Pythonmath模块提供了多种预定义常量.访问这些常量提供了几个优点

随机推荐