P21 元组 列表 P22 列表 list P23 多维列表 P24 字典

P21 元组 列表

均为一连串有顺序的数字

a_tuple = (12, 3, 5, 15, 6)
another_tuple = 2, 4, 6, 7, 8

a_list = [12, 3, 67, 7, 82]

for content in a_tuple: #another_tuple, a_list
    print(content)
a_tuple = (12, 3, 5, 15, 6)
another_tuple = 2, 4, 6, 7, 8

a_list = [12, 3, 67, 7, 82]

for index in range(len(a_list)): #range(5) 生成一个从0到4的迭代器
    print('index =', index, 'number in list =', a_list[index])

P22 列表 list

a = [1, 2, 3, 4, 2, 3, 1, 1]

a.append(0) #将0加入列表
print(a_append)
a = [1, 2, 3, 4, 2, 3, 1, 1]

a.insert(1, 0) #在1的位置添加0
print(a)
a = [1, 2, 3, 4, 2, 3, 1, 1]

a.remove(2) #删去第一个2
print(a)
a = [1, 2, 3, 4, 2, 3, 1, -1]

print(a[-1]) #最后一位的索引是-1
a = [1, 2, 3, 4, 2, 3, 1, -1]

print(a[0:3]) #第0,1,2位
print(a[:3]) #第0,1,2位
print(a[3:5]) #第3,4位
print(a[5:]) #第5位到最后一位
print(a[-3:]) #倒数第3位到最后一位
a = [1, 2, 3, 4, 2, 3, 1, -1]

print(a.index(2)) #第一个2的索引
a = [1, 2, 3, 4, 2, 3, 1, -1]

print(a.count(2)) #列表中2的个数
a = [1, 2, 3, 4, 2, 3, 1, -1]

a.sort() #从小到大排列并覆盖原数列
print(a)
a = [1, 2, 3, 4, 2, 3, 1, -1]

a.sort(reverse = True) #从大到小排列并覆盖原数列
print(a)

 P23 多维列表

a = [1, 2, 3, 4, 5]# 一维列表
multi_dim_a = [[1, 2, 3],
               [2, 3, 4],
               [3, 4, 5]]# 3行3列的二维列表
print(a[1])# 位置为1的数字
print(multi_dim_a[0][1])# 第0行第1列的数字

P24 字典

和列表类似,但是没有顺序

a_list = [1, 2, 3, 5, 4, 5, 4]
d = {'apple':1, 'pear':2, 'orange':3} #key:value一个key(数字,字符串)对应一个value
d2 = {1:'a', 'c':'b'}
print(d['apple']) #输出'apple'对应的1
print(a_list[0]) 
a_list = [1, 2, 3, 5, 4, 5, 4]
d = {'apple':1, 'pear':2, 'orange':3} #key:value一个key(数字,字符串)对应一个value
d2 = {1:'a', 'c':'b'}

del d['pear']# 删除'pear':2
print(d)
a_list = [1, 2, 3, 5, 4, 5, 4]
d = {'apple':1, 'pear':2, 'orange':3} #key:value一个key(数字,字符串)对应一个value
d2 = {1:'a', 'c':'b'}

d['b'] = 20 #添加'b':20,位置随机
print(d)

a_list = [1, 2, 3, 5, 4, 5, 4]
d = {'apple':[1, 2, 3], 'pear':{1:2,3:'a'}, 'orange':2} #value可以是列表、字典、函数
print(d['pear'][3])

 

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
stc12c5a60s2的P22P21脚分别对应外部中断0和定时器0溢出中断。 下面是使用C语言编写的一个简单的例子,演示如何在STC12系列单片机中实现对外部中断0和定时器0溢出中断的响应。 ```c #include <stc12c5a60s2.h> void ext0_isr() interrupt 0 // 外部中断0的中断服务函数 { // 处理外部中断0的事件 } void timer0_isr() interrupt 1 // 定时器0的中断服务函数 { // 处理定时器0的事件 } void main() { // 配置P21P22为输入模式 P2M1 &= ~(1 << 1); P2M0 &= ~(1 << 1); P2M1 &= ~(1 << 2); P2M0 &= ~(1 << 2); // 配置外部中断0的触发方式为下降沿触发 IT0 = 1; // 配置定时器0为模式1,使其每隔1ms产生一次中断 TMOD |= 0x01; // 定时器0初值为65536-1000=64536 TH0 = 0xFC; TL0 = 0x18; // 使能外部中断0和定时器0中断 EX0 = 1; ET0 = 1; // 全局中断使能 EA = 1; // 启动定时器0 TR0 = 1; while (1) { // 在主循环中执行其他任务 } } ``` 在上面的代码中,我们分别定义了`ext0_isr()`和`timer0_isr()`函数作为外部中断0和定时器0的中断服务函数,并通过`interrupt`关键字告诉编译器这是中断服务函数。在`main()`函数中,我们首先配置P21P22为输入模式,然后配置外部中断0的触发方式为下降沿触发,并将定时器0配置为模式1,使其每隔1ms产生一次中断。接着,我们使能外部中断0和定时器0中断,并启用全局中断。最后,我们启动定时器0并进入了一个无限循环中,在这个循环中可以执行其他任务。当P22引脚的电平发生下降沿时,就会触发外部中断0并跳转到对应的中断服务函数中执行相应的事件处理;而当定时器0溢出时,就会触发定时器0中断并跳转到对应的中断服务函数中执行相应的事件处理。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值