本文章仅作为个人的Openmv学习笔记,有问题欢迎指正~
Openmv用micro python开发的原因
- python上手非常容易
- 不需要考虑内存的申请和释放,变量可以直接定义
- 有很多的micro python库供使用
- 开发者写了非常多的算法和函数库、以及图像处理相关代码
用openmv的串口助手直接进行python语言的编写
变量本身数据不固定的语言称之为动态语言
C语言是静态语言,必须提前定义数据类型
print函数
1. print('Hello Openmv') # 打印字符串 2. print('Hello', 'openmv') 3. print('123xyz') # 打印字符串 4. print('200 + 300 =', 200+300) # 打印200 + 300 = 500 5. a = 'qwerdf' 6. print(a) # 打印a
列表
python中的列表 list 类似C语言中的数组,但是可以任意添加元素、删除元素
1. list = [1, 3, 6, 9, 8] # 列表 2. list # 打印列表 3. len(list) #列表长度 4. list[0] #第一个元素,下标0 5. list[2] #第三个元素,下标2
列表元素的删除、添加、赋值操作
list中的数据类型不必是统一的,可以是整数、字符串或者其他元素...
1. list[5] #报错 2. list[-1] #倒数第一个元素 3. 4. list.append('hahaha') # list.append在末尾添加 5. print('list =', list) 6. 7. list.insert(1, 'xxx') # 在列表元素索引为1处添加'xxx' 8. print('list =', list) 9. 10. list.pop() # 删除列表list最后一个元素 11. print('list =', list) 12. 13. list[2] = 100 # 元素索引2处赋值100 14. print('list =', list)
元组
元组只有一个变量,python会把它认为是一个整型变量,不是一个元组,可以修改
加逗号,认为是元组
1. # 元组只有一个变量,python会把它认为是一个整型变量,不是一个元组,可以修改 2. tuple = (1) 3. print('tuple =', tuple) 4. tuple = 2 5. print('tuple =', tuple) 6. tuple = (1,) #加逗号,认为是元组 7. print('tuple =', tuple)
判断
if...else...
1. a = 100 2. if a < 20: 3. print('1') 4. else: # else后面也要加: 5. print('2')
if...elif...else
1. a = 100 2. if a < 20: 3. print('1') 4. elif a < 50: 5. print('2') 6. else: # 加冒号 7. print('3')
注意在语句后面加冒号
循环
for循环
1. for i in list: # 对list中的每一个元素进行循环 2. print(i) # 打印这个列表
使用range函数,计算0~100的和
1. # 求0~100的和 2. sum = 0 3. for i in range(101): # 101是元素的个数(0~100) 4. sum += i # 等价于C语言中 sum = sum + i 5. print('sum =', sum) # 显示结果
range相当于从0~100循环
while循环
1. # while循环 2. n = 100 3. sum = 0 4. while n > 0: #记得加冒号 5. sum += n 6. n -= 1 # n-- 7. print('sum =', sum) # 显示结果
强制类型转换
1. # python内置了类型转换的函数 2. b = 66.888 3. print('b =', b) 4. b = int(b) # 强制类型转换 5. print('b =', b) 6. 7. c = 888 8. print('c =', c) 9. c = float(c) # 转换成浮点型 10. print('c =', c) 11. 12. c = str(c) # 转换成字符串 13. print('c =', c)
1. bool(1) 2. bool(0)
点灯之路
点个不同颜色的闪烁LED
1. # Untitled - By: YANCL - 周二 4月 25 2023 2. 3. import time, pyb 4. 5. led1 = pyb.LED(1) 6. led2 = pyb.LED(2) 7. led3 = pyb.LED(3) 8. 9. while(1): 10. 11. # 蓝色LED 12. #led1.on() 13. led2.on() 14. led3.on() 15. time.sleep_ms(150) 16. led1.off() 17. led2.off() 18. led3.off() 19. time.sleep_ms(150) 20. 21. # 紫色LED 22. led1.on() 23. #led2.on() 24. led3.on() 25. time.sleep_ms(150) 26. led1.off() 27. led2.off() 28. led3.off() 29. time.sleep_ms(150) 30. 31. # 黄色LED 32. led1.on() 33. led2.on() 34. #led3.on() 35. time.sleep_ms(150) 36. led1.off() 37. led2.off() 38. led3.off() 39. time.sleep_ms(150) 40. 41. # 白色LED 42. led1.on() 43. led2.on() 44. led3.on() 45. time.sleep_ms(150) 46. led1.off() 47. led2.off() 48. led3.off() 49. time.sleep_ms(150)