Kirino 的技术档案
文章简介分类 Light Dark
Entries tagged :: Python 编程
  • 2022-02-22

    输出从1到N的整数

    实现函数PrintN,能顺序打印从1到N的全部正整数 循环写法 递归写法 测试速度 运行结果: 在输入为5000时,递归消耗的时间比循环要多。 在输入过大时,递归对空间的占用是恐怖的,递归函数用掉了所有能用掉的空间还不够,最后会非正常终止了,也就不能进行正常的打印。
    Read more ⟶
  • 2022-01-04

    支持函数式编程的包

    支持函数式编程的包 Python的目标不是变成函数式语言,但是得益于operator和functools等包的支持,函数式编程风格也可以信手拈来 operator模块 在函数式编程中,经常需要把算术运算符当作函数使用。例如,不适使用递归计算阶乘。求和可以使用sum函数,但是求积没有这样的函数。可以使用redu…
    Read more ⟶
  • 2022-01-04

    函数注解

    函数注解 Python 3提供了一种句法,用于为函数声明中的参数和返回值附加元数据 函数声明中的各个参数可以在:之后添加注解表达式。如果参数有默认值,注解放在参数名和=号之间。如果注解返回值,在 和函数生命末尾的:之间添加一个- 和一个表达式。这个表达式可以是任何类型。注解中最常用的类型是类(如str和int…
    Read more ⟶
  • 2021-12-31

    获取有关参数的信息

    获取关于参数的信息 HTTP微框架Bobo有个使用内省函数的例子 bobo.query装饰器把一个普通的函数(如hello)与框架的请求处理机制集成起来了。Bobo会内省hello函数,发现它需要一个名为person的参数,然后从请求中获取那个名称对应的参数,将其传递给hello函数,因此程序员根本不用触碰请…
    Read more ⟶
  • 2021-12-18

    从定位参数到仅限关键字参数

    从定位参数到仅限关键字参数 Python最好的特性之一是提供了极为灵活的参数处理机制,而且Python3进一步提供了仅限关键字参数(keyword-only argument)。与之密切相关的是,调用函数时使用 和 展开可迭代对象,映射到单个参数 '<br / ' '<p hello</p ' <p hell…
    Read more ⟶
  • 2021-12-18

    函数内省

    函数内省 除了 doc ,函数对象还有很多属性。使用dir函数可以探知factorial具有下述属性: ' annotations ', ' call ', ' class ', ' closure ', ' code ', ' defaults ', ' delattr ', ' dict ', ' dir…
    Read more ⟶
  • 2021-12-17

    用户定义的可调用类型

    用户定义的可调用类型 不仅Python函数是真正的对象,任何Python对象都可以表现得像函数。为此,只需要实现方法 call 0 2 True 实现 call 方法的类是创建函数类对象的简便方式,此时必须在内部维护一个状态,让它在调用之间可用,例如BingoCage中的剩余元素。装饰器就是这样。装饰器必须是…
    Read more ⟶
  • 2021-12-17

    可调用对象

    可调用对象 除了用户定义的对象,调用运算符(即 )还可以应用到其他对象上。如果想判断对象能否调用,可以使用内置的callable 函数。 Python数据模型文档列出了7种可调用对象 1.用户定义的函数 - 使用def语句或lambda表达式创建 2. 内置函数 - 使用C语言(CPython)实现的函数,如…
    Read more ⟶
  • 2021-12-17

    匿名函数

    匿名函数 lambda关键字在Python表达式内部创建匿名函数 然后,Python简单的语法限制了lambda函数的定义体只能使用纯表达式。lambda函数的定义体中不能赋值,也不能使用while和try等Python语句 在参数列表中最适合使用匿名函数 'banana', 'apple', 'fig',…
    Read more ⟶
  • 2021-12-16

    模拟生成微软序列号(Python123)

    模拟生成微软序列号 描述 微软产品一般都一个25位的序列号,是用来区分每份微软产品的产品序列号。产品序列号由五组被“-”分隔开,由字母数字混合编制的字符串组成,每组字符串是由五个字符串组成。如: 36XJE-86JVF-MTY62-7Q97Q-6BWJ2 每个字符是取自于以下24个字母及数字之中的一个: B…
    Read more ⟶
  • 2021-12-16

    校验身份证号码并输出个人信息(Python123)

    校验身份证号码并输出个人信息 描述 2. 中国目前采用的是18位身份证号,其第7-10位数字是出生年,11-12位是出生月份,13-14是出生日期,第17位是性别,奇数为男性,偶数为女性,第18位是校验位。 如果身份证号码的其中一位填错了(包括最后一个校验位),则校验算法可以检测出来。如果身份证号的相邻2位填…
    Read more ⟶
  • 2021-12-16

    高等函数

    高阶函数 接受函数为参数,或者把函数作为结果返回的函数是高阶函数(high-order function)。map函数就是一个,内置函数sorted也是:可选的key参数用于提供一个函数,它会应用到各个元素上进行排序 'fig', 'apple', 'cherry', 'banana', 'strawbery…
    Read more ⟶
  • 2021-12-16

    一等函数

    一等函数 在Python中,函数是一等对象。编程语言理论家把“一等对象”定义为满足下述条件的程序实体: - 在运行时创建 - 能赋值给变量或数据结构中的元素 - 能作为参数传递给函数 - 能作为函数的返回结果 在Python中,整数、字符串和字典都是一等对象 把函数视作对象 Python函数是对象 14050…
    Read more ⟶
  • 2021-12-16

    支持字符串和字节序列的双模式API

    支持字符串和字节序列的双向API 标准库中的一些函数能接受字符串或字节序列作为参数,然后根据类型展现不同的行为。re和os模块中就有这样的函数 正则表达式中的字符串和字节序列 如果使用字节序列构建正则表达式,\d和\w等模式只能匹配ASCII字符;相比之下,如果是字符串模式,就能匹配ASCII之外的Unico…
    Read more ⟶
  • 2021-12-16

    Unicode数据库

    Unicode文本排序 Python比较任何类型的序列时,会一一比较序列里的各个元素。对字符串来说,比较的是码位,可是在比较非ASCII字符时,得到的结果不如人意。 'acai', 'acerola', 'atemoia', 'caja', 'caju' 在Python中,非ASCII文本的标准排序方式是使用…
    Read more ⟶
  • 2021-12-07

    使用位级和逻辑运算,编写C表达式(x==y)

    只是用位级和逻辑运算,编写一个C表达式,它等价于x==y。当x和y相等时返回1,否则返回0
    Read more ⟶
  • 2021-11-21

    身份证号校验(Python123)

    身份证号校验 描述 中国目前采用的是18位身份证号,其第7-10位数字是出生年,11-12位是出生月份,13-14是出生日期,第17位是性别,奇数为男性,偶数为女性,第18位是校验位。 如果身份证号码的其中一位填错了(包括最后一个校验位),则校验算法可以检测出来。如果身份证号的相邻2位填反了,则校验算法可以检…
    Read more ⟶
  • 2021-11-21

    计算圆周率(Python123)

    计算圆周率 描述 根据下面的泰勒级数关系式,求圆周率的值,当最后一项的值小于给定阈值时结束。 输入格式 输入在一行中给出小于1且大于0的阈值。 输出格式 在一行中输出满足阈值条件的近似圆周率,输出到小数点后6位。 代码
    Read more ⟶
  • 2021-11-21

    求e的近似值(Python123)

    求e的近似值 描述 自然常数e可以用级数1+1/1!+1/2!+⋯+1/n!来近似计算。‪‬‪‬‪‬‪‬‪‬‮‬‪‬‮‬‪‬‪‬‪‬‪‬‪‬‮‬‫‬‫‬‪‬‪‬‪‬‪‬‪‬‮‬‫‬‫‬‪‬‪‬‪‬‪‬‪‬‮‬‫‬‪‬‪‬‪‬‪‬‪‬‪‬‮‬‫‬‮‬‪‬‪‬‪‬‪‬‪‬‮‬‭‬‫‬ 本题要求对给定的非负整数n,…
    Read more ⟶
  • 2021-11-21

    判断是否直角三角形

    判断是否直角三角形 描述 输入三个数a,b,c, 判断能否以它们为三个边长构成直角三角形。若能,输出YES,否则输出NO。 输入格式 输入包括三行,每行是一个数字 输出格式 'YES' 或'NO' 代码
    Read more ⟶
  • 2021-11-21

    水仙花数(Python123)

    水仙花数 描述 水仙花数(Narcissistic number)也被称为超完全数字不变数(pluperfect digital invariant, PPDI)、自恋数、自幂数、阿姆斯壮数或阿姆斯特朗数(Armstrong number),水仙花数是指一个 n位数(n≥3 且 n<6),它的每个位上的数字的…
    Read more ⟶
  • 2021-11-21

    密码强度判断(Python123)

    密码强度判断 描述 用户输入一个字符串做为密码,判断密码强度,规则为:密码长度小于8弱密码,密码长度大于等于8且包含至少2种字符为中等强度、密码包含3种字符为强、包含全部4种字符为极强。 提示:‪‬‪‬‪‬‪‬‪‬‮‬‪‬‮‬‪‬‪‬‪‬‪‬‪‬‮‬‫‬‫‬‪‬‪‬‪‬‪‬‪‬‮‬‫‬‫‬‪‬‪‬‪‬‪‬‪‬…
    Read more ⟶
  • 2021-11-21

    字符串连接(Python123)

    字符串连接 描述 用.将用户输入的4个字符串连接成一个字符串(第一个字符串前不能有'.') 输入格式 输入包括4行, 每行输入一个字符串 输出格式 输出一个用'.'连接起来的字符串 代码
    Read more ⟶
  • 2021-11-21

    黑客语解密(Python123)

    黑客语解密 描述 黑客语(Leet)是从网络发展起来的一种文字书写方式。通常将英语中的字母替换为数字和特殊符号。这种方式被很多黑客组织所使用。由于具有隐密性,所以它也广泛被用于密码中。使用Leet书写的密码,不会增加密码记忆的复杂度,但却可以提高密码的强度。常见的转化规律有,$替换s,3替换e,4替换a,0替…
    Read more ⟶
  • 2021-11-21

    分类统计字符(Python123)

    分类统计字符 描述 用户输入一个字符串,分别统计其中小写字母、大写字母、数字、空格和其他字符的个数,并在一行内输出小写字母、大写字母、数字、空格和其他字符的个数。 输入格式 输入一个字符串 输出格式 在一行内输出小写字母、大写字母、数字、空格和其他字符的个数 代码
    Read more ⟶
  • 2021-11-20

    字符串长度(Python123)

    字符串长度 描述 用户输入一个字符串,程序输出字符串的长度 输出格式 一个表示字符串长度的整数 代码
    Read more ⟶
  • 2021-11-20

    子字符串切片(Python123)

    子字符串输出 描述 按要求完善示例程序:‪‬‪‬‪‬‪‬‪‬‮‬‪‬‮‬‪‬‪‬‪‬‪‬‪‬‮‬‫‬‫‬‪‬‪‬‪‬‪‬‪‬‮‬‫‬‫‬‪‬‪‬‪‬‪‬‪‬‮‬‫‬‪‬‪‬‪‬‪‬‪‬‪‬‮‬‫‬‮‬‪‬‪‬‪‬‪‬‪‬‮‬‭‬‫‬ 分两行输出 python语言程序设计 python字符串可采用区间形式访问,…
    Read more ⟶
  • 2021-11-20

    字符串逆序输出(Python123)

    字符串逆序输出 描述 用户输入一个字符串,倒序输出。 输入格式 输入一个字符串 输出格式 一个倒序的字符串 代码
    Read more ⟶
  • 2021-11-20

    三角函数计算(Python123)

    三角函数计算 描述 根据下面公式计算并输出x的值,a和b的值由用户输入,括号里的数字是角度值, 圆周率的值使用数学常数math.pi。‪‬‪‬‪‬‪‬‪‬‮‬‪‬‮‬‪‬‪‬‪‬‪‬‪‬‮‬‫‬‫‬‪‬‪‬‪‬‪‬‪‬‮‬‫‬‫‬‪‬‪‬‪‬‪‬‪‬‮‬‫‬‪‬‪‬‪‬‪‬‪‬‪‬‮‬‫‬‮‬‪‬‪‬‪‬‪‬…
    Read more ⟶
  • 2021-11-20

    同符号数学运算(Python123)

    同符号运算 描述 读入一个整数N,分别计算如下内容:‪‬‪‬‪‬‪‬‪‬‮‬‪‬‮‬‪‬‪‬‪‬‪‬‪‬‮‬‫‬‫‬‪‬‪‬‪‬‪‬‪‬‮‬‫‬‫‬‪‬‪‬‪‬‪‬‪‬‮‬‫‬‪‬‪‬‪‬‪‬‪‬‪‬‮‬‫‬‮‬‪‬‪‬‪‬‪‬‪‬‮‬‭‬‫‬ 1. N的绝对值;‪‬‪‬‪‬‪‬‪‬‮‬‪‬‮‬‪‬‪‬‪‬‪…
    Read more ⟶
  • 2021-11-20

    温度转换异常处理(Python123)

    温度转换异常处理 描述 温度的刻画有两个不同体系:摄氏度(Celsius)和华氏度(Fabrenheit)。‪‬‪‬‪‬‪‬‪‬‮‬‪‬‮‬‪‬‪‬‪‬‪‬‪‬‮‬‫‬‫‬‪‬‪‬‪‬‪‬‪‬‮‬‫‬‫‬‪‬‪‬‪‬‪‬‪‬‮‬‫‬‪‬‪‬‪‬‪‬‪‬‪‬‮‬‫‬‮‬‪‬‪‬‪‬‪‬‪‬‮‬‭‬‫‬ 请编写程…
    Read more ⟶
  • 2021-11-14

    为了正确比较而规范Unicode字符串

    为了正确比较而规范Unicode字符串 因为Unicode有组合字符(变音字符和附加到前一个字符上的记号,打印时作为一个整体),所以字符串比较起来很复杂。 例如,"café"这个词可以使用两种方式构成,分别由4个和5个码位,但是结果完全一样: 'café', 'café' 4, 5 False U+0301…
    Read more ⟶
  • 2021-11-14

    处理文本文件

    处理文本文件 处理文本的最佳实践是“Unicode三明治”。尽早把输入的的字节序列解码成字符串,然后对字符串进行处理,在其他过程中一定不能编码或解码。对输出来说,要尽量晚地把字符串编码成字节序列 在Python3中能轻松的采纳Unicode三明治的建议,因为内置的open函数会再读取文件时做必要的解码,以文本…
    Read more ⟶
  • 2021-11-13

    乒乓球比赛模拟

    运行结果:
    Read more ⟶
  • 2021-11-08

    通过显示字节判断小端法

    输出: 8 21 2143 214365 21436587
    Read more ⟶
  • 2021-11-07

    输出字节序列的地址

    输出字节序列的地址
    Read more ⟶
  • 2021-10-27

    了解编码问题

    了解编码问题 虽然有一般性的UnicodeError异常,但是报告错误时几乎都会指明具体的异常:UnicodeEncoderError (把字符串转换成二进制序列时)或UnicodeDecoderError(把二进制序列转换成字符串时)。如果 源码的编码与预期不符,加载Python模块时还可能抛出Syntax…
    Read more ⟶
  • 2021-10-25

    基本编解码器

    基本的编解码器 Python自带了超过100中编解码器(codec,encoder/decoder ,用于文本和字节之间相互转换。 每个编码器都有一个名称,如'uft 8',而且经常有几个别名,如果'uft8','uft-8'和'U8'。 这些名称可以传递给open 、str.encode 、bytes.de…
    Read more ⟶
  • 2021-10-24

    第五次作业

    七段数码管绘制系统时间(年,月,日,小时) 代码 画图思路: 运行结果:
    Read more ⟶
  • 2021-10-10

    字符概要

    Python 3引入的不可变bytes类型和Python 2.6添加的可变bytearray类型 bytes和bytesarray对象的各个元素是介于0-255(含)之间的整数,而不像Python 2 的str对象那样是单个的字符。然而,二进制序列的切片始终是同一种类型的二进制序列,包含长度为1的切片 b'c…
    Read more ⟶
  • 2021-10-10

    字符问题

    编码与解码 “字符串”是个相当简单的概念:一个字符串是一个字符序列。问题出在“字符”的定义上。在2015年,“字符”的最佳定义是Unicode字符。因为,从Python3的str对象中获取的元素是Unicode字符,这相当于从Python2的unicode对象中获取的元素,而不是Python2的str对象中获…
    Read more ⟶
  • 2021-09-26

    字典推导

    构造字典 'China': 86, 'India': 91, 'United States': 1, 'Indonesia': 62, 'Brazil': 55, 'Pakistan': 92, 'Bangladesh': 880, 'Nigeria': 234, 'Russia': 7, 'Japan':…
    Read more ⟶
  • 2021-09-19

    什么是可散列的数据类型

    什么是可散列的数据类型 &emsp;在Python词汇表( https://docs.python.org/3/glossary.html term-hashable https://docs.python.org/3/glossary.html term-hashable )中,关于可散列类型的定义有这样一…
    Read more ⟶
  • 2021-09-19

    当列表不是首选时

    数组 0.39807560121397423 0.39807560121397423 True 内存视图 5 -2 254, 255, 255, 255, 0, 0, 1, 0, 2, 0 array 'h', -2, -1, 1024, 1, 2 256 NumPy和SciPy array 0, 1, 2,…
    Read more ⟶
  • 2021-09-18

    列表操作

    为什么切片和区间会忽略最后一个元素 + 当只有最后一个位置信息时,可以快速看出切片和区间里有几个元素:range 3 和my list :3 都返回三个元素 + 当起止位置信息都可见时,我们可以快速计算出切片和区间长度,用最后一个数减去第一个下标(stop-start 即可 + 方便用任意一个下标来把序列分割…
    Read more ⟶
  • 2021-09-15

    具体命名元组

    City name='Tokyo', country='JP', population=36.933, coordinates= 35.68722, 139.691667 36.933 35.68722, 139.691667 'name', 'country', 'population', 'coordin…
    Read more ⟶
  • 2021-09-13

    第二周作业

    第二周作业 计算矩形面积 格式化输出 字符串逆序输出 照猫画虎求阶乘 天天向上的力量 B 同符号数学运算 快乐的数字 凯撒密码 B 括号配对检测 A 字符串反码 运行超市抹零结账行为 计算学生成绩的分差和平均分 使用比较运算符比较大小关系 手机店打折活动 新建一个文件,并保存一段话
    Read more ⟶
  • 2021-09-08

    元组和记录

    BRA/CE342567 ESA/XDA205858 USA/31195855 USA BRA ESA 33.9425 -118.408056 1 2 1 2 2, 4 2, 4 2 4 'Tuple.py' 0 1 2, 3, 4 0 1 2 0 1 0 1, 2 3 4 0, 1 2 3 4
    Read more ⟶
  • 2021-09-08

    Python列表推导和可读性

    36, 37, 94, 38, 42, 9813 36, 37, 94, 38, 42, 9813 9813 9813
    Read more ⟶
  • 2021-09-06

    Python模拟数据类型

    利用特殊方法,来使得自定义对象来实现一个二维向量 Vector 类 一个简单的二维向量类 Vector 2,4 Vector 4,5 5.0 Vector 6,12
    Read more ⟶
  • 2021-09-05

    一摞Python风格纸牌

    Card rank='7', suit='diamonds' 52 Card rank='2', suit='spades' Card rank='5', suit='diamonds' Card rank='8', suit='spades' Card rank='7', suit='spades' Car…
    Read more ⟶
  • 2021-09-04

    Python语言基础学习报告

    从零开始学Python 第一节课 学会了Python的变量赋值、运算符使用和强制类型转换 输出结果
    Read more ⟶