2021-03-02 COMP9021 第五节课笔记

内嵌函数 - inner function

又叫nested function, 但是python官方的文档把这一部分放在了命名空间这部分。
官方文档:9.2.1. Scopes and Namespaces Example
其他资料:内嵌函数和闭包
nonlocal和global关键字老师还没有讲,上面的文档有写。

def g():
	print('G')
	
def f():
	print('F')
	g()
	print('End')
f()
def f():
	def g():
		print('G')
	print('F')
	g()
	print('End')
f()

通用字符集 - Unicode character set

查询

查询网站1:Unicode Character Table
查询网站2:Unicode Table
查询命令:!man ascii
注: 感叹号是指后面的命令将运行在系统的shell环境下,所以可以直接在终端命令行运行,所以windows系统下是运行不了的。
在这里插入图片描述
在这里插入图片描述

字符转换

[1] 是ASCII转字符。chr: char ------- ASCII转字符; ord: ordinal ---- 字符转ASCII
[2] 是16进制转换。 hex: 转16进制
在这里插入图片描述

[3] python支持输入Unicode字符。 用\U表示Unicode字符,后方紧跟8个16进制数即可
[4] python支持直接输入Unicode字符的名字。 用\N表示输入字符名字,\N必须大写,字符名大小写均可
在这里插入图片描述

进制转换

参考资料:Python 二进制,十进制,十六进制转换
官方资料1: Input and Output
官方资料2: Formatted string literals

  • 数值转为二进制

[39] int(A,B)的作用是将B进制下的A以10进制输出,A是一个字符形式的数值,B是该数值所使用的进制。
[41] 将一个数以二进制输出,输出为一个字符串,而[39]是数字
在这里插入图片描述

[31] - 将数值转为二进制并填充零。好像只能写0,其他字符不可以
[36] - 转为二进制并将每个位保存到一个列表中。
[37] - 转为二进制并将每个位保存到一个tuple中。
在这里插入图片描述

整除取余

取出某个数的中间位
在这里插入图片描述

小练习

将0, 1, 2, 3以二进制输出每个位
在这里插入图片描述

将7997-8001按位输出
在这里插入图片描述

右移操作
在这里插入图片描述

取二进制的第4位数
在这里插入图片描述

取十六进制的第二位数
在这里插入图片描述

排序

不指定排序的key,就按ASCII排。
指定了key,就先按key排序,再按处理顺序排序,比如 [95]。
在这里插入图片描述

先按字符串长度排序,再按小写的ASCII排序
在这里插入图片描述

还可以对字典的key进行排序
在这里插入图片描述

闭包

就是正常的闭包,用lambda作关键字。
在这里插入图片描述

  • 2
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
错误是由Spectre在AHDL读入过程中发现的。错误代码为(vacomp-1008),错误信息显示为“无法编译”。 Spectre是一种用于电路仿真的软件工具,它可以用于分析和模拟电子系统。AHDL代表模拟后者硬件描述语言,它是一种用于描述数字电路的语言。在使用Spectre进行模拟时,可能会出现各种错误,其中(vacomp-1008)是一种常见的错误类型。 从错误信息来看,“无法编译”表示在读取AHDL代码时,Spectre无法将其转换为有效的仿真模型。这可能是由于多种原因导致的,例如AHDL代码中存在语法错误、引用了未定义的元件或信号,或者代码中的某些部分不符合Spectre的要求等等。 要解决这个错误,可以尝试以下几个步骤: 1. 检查AHDL代码中是否存在语法错误。确保所有语句、声明和赋值等都符合AHDL的语法规则。 2. 检查代码中是否引用了未定义的元件或信号。确认所有使用的元件和信号都已正确定义,并且它们的类型和属性与代码中的使用一致。 3. 确保代码中的各个部分都符合Spectre的要求。查阅Spectre的文档或用户手册,了解其对于AHDL代码的要求和限制,并进行相应的修改。 4. 尝试减少代码的复杂性。如果代码过于复杂,可以尝试分解成更小的模块进行测试和调试,逐步排查错误。 如果以上步骤都无法解决问题,可以尝试搜索或咨询相关的技术支持论坛或社区,寻求其他用户的帮助和建议。最终目标是找到导致错误的具体原因,并进行修正,以使代码能够成功编译和仿真。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值