python面向对象小练习-学员管理系统-eval()、__dict__
文章目录
- 目标
- 一. 系统需求
- 二. 准备程序文件
- 2.1 分析
- 2.2 创建程序文件
- 三. 书写程序
- 3.1 student.py
- 3.1.2 程序代码
- 3.2 managerSystem.py
- 3.2.1 定义类
- 3.2.2 管理系统框架
- 3.3 main.py
- 3.4 定义系统功能函数
- 3.4.1 添加功能
- 3.4.2 删除学员
- 3.4.3 修改学员信息
- 3.4.5 查询学员信息
- 3.4.6 显示所有学员信息
- 3.4.7 保存学员信息 (▲字典写到文件)
- 拓展`__dict__`
- 3.4.8 加载学员信息 (▲读取字典中的文件)
- 拓展 eval()
目标
- 了解面向对象开发过程中类内部功能的分析方法
- 了解常用系统功能
- 添加
- 删除
- 修改
- 查询
一. 系统需求
使用面向对象编程思想完成学员管理系统的开发,具体如下:
- 系统要求:学员数据存储在文件中
- 系统功能:添加学员、删除学员、修改学员信息、查询学员信息、显示所有学员信息、保存学员信息及退出系统等功能。
二. 准备程序文件
2.1 分析
- 角色分析
- 学员
- 管理系统
工作中注意事项
- 为了方便维护代码,一般一个角色一个程序文件;
- 项目要有主程序入口,习惯为
main.py
2.2 创建程序文件
创建项目目录,例如:StudentManagerSystem
程序文件如下:
- 程序入口文件:main.py
- 学员文件:student.py
- 管理系统文件:managerSystem.py
三. 书写程序
3.1 student.py
需求:
- 学员信息包含:姓名、性别、手机号;
- 添加
__str__
魔法方法,方便查看学员对象信息
3.1.2 程序代码
class Student(object):def __init__(self, name, gender, tel):self.name = nameself.gender = genderself.tel = teldef __str__(self):return f'{self.name}, {self.gender}, {self.tel}'
3.2 managerSystem.py
需求:
- 存储数据的位置:文件(student.data)
- 加载文件数据
- 修改数据后保存到文件
- 存储数据的形式:列表存储学员对象
- 系统功能
- 添加学员
- 删除学员
- 修改学员
- 查询学员信息
- 显示所有学员信息
- 保存学员信息
- 退出系统
3.2.1 定义类
class StudentManager(object):def __init__(self):# 存储数据所用的列表self.student_list = []
3.2.2 管理系统框架
需求:系统功能循环使用,用户输入不同的功能序号执行不同的功能。
- 步骤
- 定义程序入口函数
- 加载数据
- 显示功能菜单
- 用户输入功能序号
- 根据用户输入的功能序号执行不同的功能
- 定义系统功能函数,添加、删除学员等
- 定义程序入口函数
class StudentManager(object):def __init__(self):# 存储数据所用的列表self.student_list = []# 一. 程序入口函数,启动程序后执行的函数def run(self):# 1. 加载学员信息self.load_student()while True:# 2. 显示功能菜单self.show_menu()# 3. 用户输入功能序号menu_num = int(input('请输入您需要的功能序号:'))# 4 根据用户输入的功能序号执行不同的功能if menu_num == 1:# 添加学员self.add_student()elif menu_num == 2:# 删除学员self.del_student()elif menu_num == 3:# 修改学员信息self.modify_student()elif menu_num == 4:# 查询学员信息self.search_student()elif menu_num == 5:# 显示所有学员信息self.show_student()elif menu_num == 6:# 保存学员信息self.save_student()elif menu_num == 7:# 退出系统break# 二. 定义功能函数# 2.1 显示功能菜单@staticmethoddef show_menu():print('请选择如下功能-----------------')print('1:添加学员')print('2:删除学员')print('3:修改学员信息')print('4:查询学员信息')print('5:显示所有学员信息')print('6:保存学员信息')print('7:退出系统')# 2.2 添加学员def add_student(self):pass# 2.3 删除学员def del_student(self):pass# 2.4 修改学员信息def modify_student(self):pass# 2.5 查询学员信息def search_student(self):pass# 2.6 显示所有学员信息def show_student(self):pass# 2.7 保存学员信息def save_student(self):pass# 2.8 加载学员信息def load_student(self):pass
3.3 main.py
# 1. 导入managerSystem模块
from managerSystem import *# 2. 启动学员管理系统
if __name__ == '__main__':student_manager = StudentManager()student_manager.run()
3.4 定义系统功能函数
3.4.1 添加功能
-
需求:用户输入学员姓名、性别、手机号,将学员添加到系统。
-
步骤
- 用户输入姓名、性别、手机号
- 创建该学员对象
- 将该学员对象添加到列表
-
代码
# 添加学员函数内部需要创建学员对象,故先导入student模块
from student import *class StudentManager(object):......# 2.2 添加学员def add_student(self):# 1. 用户输入姓名、性别、手机号name = input('请输入您的姓名:')gender = input('请输入您的性别:')tel = input('请输入您的手机号:')# 2. 创建学员对象:先导入学员模块,再创建对象student = Student(name, gender, tel)# 3. 将该学员对象添加到列表self.student_list.append(student)# 打印信息print(self.student_list)print(student)
3.4.2 删除学员
- 需求:用户输入目标学员姓名,如果学员存在则删除该学员。
- 步骤
- 用户输入目标学员姓名
- 遍历学员数据列表,如果用户输入的学员姓名存在则删除,否则则提示该学员不存在。
- 代码
# 2.3 删除学员:删除指定姓名的学员def del_student(self):# 1. 用户输入目标学员姓名del_name = input('请输入要删除的学员姓名:')# 2. 如果用户输入的目标学员存在则删除,否则提示学员不存在for i in self.student_list:if i.name == del_name:self.student_list.remove(i)breakelse:print('查无此人!')# 打印学员列表,验证删除功能print(self.student_list)
3.4.3 修改学员信息
- 需求:用户输入目标学员姓名,如果学员存在则修改该学员信息。
- 步骤
- 用户输入目标学员姓名;
- 遍历学员数据列表,如果用户输入的学员姓名存在则修改学员的姓名、性别、手机号数据,否则则提示该学员不存在。
- 代码
# 2.4 修改学员信息def modify_student(self):# 1. 用户输入目标学员姓名modify_name = input('请输入要修改的学员的姓名:')# 2. 如果用户输入的目标学员存在则修改姓名、性别、手机号等数据,否则提示学员不存在for i in self.student_list:if i.name == modify_name:i.name = input('请输入学员姓名:')i.gender = input('请输入学员性别:')i.tel = input('请输入学员手机号:')print(f'修改该学员信息成功,姓名{i.name},性别{i.gender}, 手机号{i.tel}')breakelse:print('查无此人!')
3.4.5 查询学员信息
- 需求:用户输入目标学员姓名,如果学员存在则打印该学员信息
- 步骤
- 用户输入目标学员姓名
- 遍历学员数据列表,如果用户输入的学员姓名存在则打印学员信息,否则提示该学员不存在。
- 代码
# 2.5 查询学员信息def search_student(self):# 1. 用户输入目标学员姓名search_name = input('请输入要查询的学员的姓名:')# 2. 如果用户输入的目标学员存在,则打印学员信息,否则提示学员不存在for i in self.student_list:if i.name == search_name:print(f'姓名{i.name},性别{i.gender}, 手机号{i.tel}')breakelse:print('查无此人!')
3.4.6 显示所有学员信息
- 打印所有学员信息
- 步骤
- 遍历学员数据列表,打印所有学员信息
- 代码
# 2.6 显示所有学员信息def show_student(self):print('姓名\t性别\t手机号')for i in self.student_list:print(f'{i.name}\t{i.gender}\t{i.tel}')
3.4.7 保存学员信息 (▲字典写到文件)
- 需求:将修改后的学员数据保存到存储数据的文件。
- 步骤
- 打开文件
- 文件写入数据
- 关闭文件
思考
- 文件写入的数据是学员对象的内存地址吗?
- 文件内数据要求的数据类型是什么?
拓展__dict__
class A(object):a = 0def __init__(self):self.b = 1aa = A()
# 返回类内部所有属性和方法对应的字典
print(A.__dict__)
# 返回实例属性的值和组成的字典
print(aa.__dict__) # 注意:仅仅打印实例属性(不打印类属性)
运行结果:
{'__module__': '__main__', 'a': 0, '__init__': <function A.__init__ at 0x000001EE097755E0>, '__dict__': <attribute '__dict__' of 'A' objects>, '__weakref__': <attribute '__weakref__' of 'A' objects>, '__doc__': None}
{'b': 1}
在Python中
- 代码
# 2.7 保存学员信息def save_student(self):# 1. 打开文件f = open('student.data', 'w')# 2. 文件写入学员数据# 注意1:文件写入的数据不能是学员对象的内存地址,需要把学员数据转换成列表字典数据再做存储new_list = [i.__dict__ for i in self.student_list]# [{'name': 'aa', 'gender': 'nv', 'tel': '111'}]print(new_list)# 注意2:文件内数据要求为字符串类型,故需要先转换数据类型为字符串才能文件写入数据f.write(str(new_list))# 3. 关闭文件f.close()
3.4.8 加载学员信息 (▲读取字典中的文件)
拓展 eval()
eval是Python的一个内置函数,这个函数的作用是,返回传入字符串的表达式的结果。
.
想象一下变量赋值时,将等号右边的表达式写成字符串的格式,将这个字符串作为eval的参数,eval的返回值就是这个表达式的结果。
# eval
a = "[[1,2], [3,4], [5,6], [7,8], [9,0]]"
b = eval(a)
print(type(b),b) # <class 'list'> [[1, 2], [3, 4], [5, 6], [7, 8], [9, 0]]a = "{1: 'a', 2: 'b'}"
b = eval(a)
print(type(b),b) # <class 'dict'> {1: 'a', 2: 'b'}a = "([1,2], [3,4], [5,6], [7,8], (9,0))"
b = eval(a)
print(type(b),b) # <class 'tuple'> ([1, 2], [3, 4], [5, 6], [7, 8], (9, 0))
-
需求:每次进入系统后,修改的数据是文件里面的数据
-
步骤
- 尝试以
"r"
模式打开学员数据文件,如果文件不存在则以"w"
模式打开文件 - 如果文件存在则读取数据并存储数据
- 读取数据
- 转换数据类型为列表并转换列表内的字典为对象
- 存储学员数据到学员列表
- 关闭文件
- 尝试以
-
代码
# 2.8 加载学员信息def load_student(self):# 尝试以"r"模式打开数据文件,文件不存在则提示用户;文件存在(没有异常)则读取数据try:f = open('student.data', 'r')except:f = open('student.data', 'w')else:# 1. 读取数据data = f.read()# 2. 文件中读取的数据都是字符串且字符串内部为字典数据,故需要转换数据类型再转换字典为对象后存储到学员列表new_list = eval(data)self.student_list = [Student(i['name'], i['gender'], i['tel']) for i in new_list]finally:# 3. 关闭文件f.close()
- 代码小结:
student.py
class Student(object):def __init__(self,name,gender,tel):self.name = nameself.gender = genderself.tel = teldef __str__(self):return f'{self.name}, {self.gender}, {self.tel}'
main.py
# 1. 导入managerSystem模块
from managerSystem import *# 2. 启动学员管理系统
if __name__ == '__main__':student_manager = StudentManager()student_manager.run()
managerSystem.py
# 添加学员函数内部需要创建学员对象,故先导入student模块
from student import *class StudentManager(object):def __init__(self):# 存储数据所用列表self.student_list = []# self.student_list.append(Student('hza','男','123'))# self.student_list.append(Student('yth','男','456'))# self.student_list.append(Student('hls','女','789'))self.show()# 一、程序入口函数,启动程序后执行的函数def run(self):# 1、加载学员信息self.load_student() # 每次启动都自动从本地加载学员信息while True:# 2. 显示功能菜单self.show_menu()# 3. 用户输入功能序号menu_num = int(input('请输入您需要的功能序号:'))# 4. 根据用户输入的功能序号执行不同的功能if menu_num == 1:# 添加学员self.add_student()elif menu_num == 2:# 删除学员self.del_student()elif menu_num == 3:# 修改学员信息self.modify_student()elif menu_num == 4:# 查询学员信息self.search_student()elif menu_num == 5:# 显示所有学员信息self.show_student()elif menu_num == 6:# 保存学员信息self.save_student()elif menu_num == 7:self.load_student()elif menu_num == 8:# 退出系统break# 二 定义功能函数# 2.1 显示功能菜单@staticmethoddef show_menu():print('请选择如下功能.........................')print('1:添加学员')print('2:删除学员')print('3:修改学员信息')print('4:查询学员信息')print('5:显示所有学员信息')print('6:保存学员信息')print('7:从本地加载学员信息')print('8:退出系统')# 打印列表打印的竟然是地址 修改一下def show(self):for s in self.student_list:print(s)# 2.2 添加学员def add_student(self):# 1. 用户输入姓名、性别、手机号name = input('请输入您的姓名:')gender = input('请输入您的性别:')tel = input('请输入您的手机号:')# 2. 创建学员对象:先导入学员模块,再创建对象student = Student(name, gender, tel)# 3. 将该学员对象添加到列表self.student_list.append(student)# 打印信息self.show() # 所有数据库信息print(student)# 2.3 删除学员:删除指定姓名的学员def del_student(self):# 1. 用户输入目标学员姓名del_name = input('请输入要删除的学员姓名:')# 2. 如果用户输入的目标学员存在则删除,否则提示学员不存在for i in self.student_list:if i.name == del_name:self.student_list.remove(i)breakelse:print('查无此人!')# 打印学员列表,验证删除功能self.show() # 所有数据库信息# 2.4 修改学员信息def modify_student(self):# 1. 用户输入目标学员姓名modify_name = input('请输入要修改的学员的姓名:')# 2. 如果用户输入的目标学员存在则修改姓名、性别、手机号等数据,否则提示学员不存在for i in self.student_list:if i.name == modify_name:i.name = input('请输入学员姓名:')i.gender = input('请输入学员性别:')i.tel = input('请输入学员手机号:')print(f'修改该学员信息成功,姓名{i.name},性别{i.gender}, 手机号{i.tel}')breakelse:print('查无此人!')# 2.5 查询学员信息def search_student(self):# 1. 用户输入目标学员姓名search_name = input('请输入要查询的学员的姓名:')# 2. 如果用户输入的目标学员存在,则打印学员信息,否则提示学员不存在for i in self.student_list:if i.name == search_name:print(f'姓名{i.name},性别{i.gender}, 手机号{i.tel}')breakelse:print('查无此人!')# 2.6 显示所有学员信息def show_student(self):print('姓名\t性别\t手机号')for i in self.student_list:print(f'{i.name}\t{i.gender}\t{i.tel}')# 2.7 保存学员信息def save_student(self):# 1.打开文件f = open('student.data','w')#‘w' 没有则创建 有则清空# 2. 文件写入学员数据# ▲注意1: 文件写入的数据不能是学员对象的内存地址,需要把学员数据转换成列表字典数据再做存储# ★ 推导式的活用new_list = [i.__dict__ for i in self.student_list] # i就是一个个student对象 i.__dict__就是一个个字典了(包含该对象所有内容)#print(new_list)# [{'name': 'hza', 'gender': '男', 'tel': '123'}, {'name': 'yth', 'gender': '男', 'tel': '456'}]# ▲注意2: 文件内数据要求为字符串类型,故需要先转换数据类型为字符串才能向文件写入数据f.write(str(new_list))#3. 关闭文件 千万记得f.close()print("保存成功!")# 2.8 加载学员信息def load_student(self):# 尝试以"r"模式打开数据文件,文件不存在则提示用户; 文件存在(没有异常)则读取数据try:f = open('student.data','r')except:f = open('student.data','w')else:# 没有异常时执行的逻辑# 1. 读取数据data = f.read()# 2. 文件中读取数据都是字符串且字符串内部为字典数据,故需要转换数据类型再转换字典为对象后存储到学员列表new_list = eval(data) # 强大的API evalself.student_list = [Student(i['name'],i['gender'],i['tel']) for i in new_list]finally:# 3. 关闭文件f.close()
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.exyb.cn/news/show-3833328.html
如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈,一经查实,立即删除!
23、迭代和递归
1.递归和迭代术语的定义是什么?一个函数可以同时采用这两种方法吗? 答: 递归的定义:将一个大问题分解成比较小的、有着相同形式的问题。 迭代跟递归策略是相反的。它使用循环(一般情况下,使用for和while语句࿰…...

2. 编程规范和编程安全指南--C/C++
目录 1 通用安全指南 I. C/C++使用错误 1.1 不得直接使用无长度限制的字符拷贝函数1.2 创建进程类的函数的安全规范1.3 尽量减少使用 _alloca 和可变长度数组1.4 printf系列参数必须对应1.5 防止泄露指针(包括%p)的值1.6 不应当把用户可修改的字符串作为printf系列函数的“fo…...

CSA云计算关键领域安全指南4.0 (中文版)
飞絮 赛博朔方 2017年7月28日,CSA国际云安全联盟在广州举办CSA《云计算关键领域安全指南V4.0》(简称:《云安全指南》4.0)发布会。 《云安全指南》第1版在2009年4月1日发布,也就是在2009年的RSA会议上CSA成立后的第一个…...

为什么有人劝别选计算机专业?
大家好,我是程序员吴师兄,一个坚持在 CSDN 日更原创的程序员。 今天想和大家聊一聊为什么有人劝别选计算机专业? 和大家说一句掏心窝的话:直到 2021 年,计算机专业依旧是寒门改变命运的一个最佳选择之一,要不是怕被…...

java 多种文件复制方式(1g文件和4g文件)
java8,测试1g文件copy和4g文件拷贝时效率 vm参数设置: -XX:PrintGCDetails -Xmx1G -Xms1G 源码 import java.io.*; import java.nio.IntBuffer; import java.nio.MappedByteBuffer; import java.nio.channels.FileChannel; import java.nio.file.F…...

浪曦_Struts2应用开发系列_第2讲.Struts2的类型转换-学习笔记
新写了一个JSP页面,什么都没改,就提示 The server encountered an internal error () that prevented it from fulfilling this request. 这是怎么回事呢? 看提示是 exception org.apache.jasper.JasperException: /input.jsp(3,0) Pa…...

小程序毕业设计 基于微信鲜花花店商城小程序毕业设计开题报告功能参考
功能效果图...

分析一下,写云快充协议的时候,各个层面的连接
使用stm32单片机通过4g模块与云快充服务器通信。 stm32与4g模块之间通过rs232通信 4g模块把stm32发过来的数据透传到服务器。 我在传输报文前都做了哪些协议连接,只有先连接上,才能进行数据传输。不是吗? TCP IP连接 属于 传输层和网络层 云…...

mysql开启免密登录_Mysql之三种免密登录方式
一、示例环境版本说明操作系统版本centos7.6[wuhstest1 mysql]$ cat /etc/redhat-releaseCentOS Linux release 7.6.1810 (Core)mysql数据库版本5.7.32[wuhstest1 mysql]$ mysql -Vmysql Ver 14.14 Distrib 5.7.32, for el7 (x86_64) using EditLine wrapper二、MySQL免密登录方…...

用HTML、CSS技术设计的个人网页与实现制作(web前端期末大作业)
🎉精彩专栏推荐👇🏻👇🏻👇🏻 ✍️ 作者简介: 一个热爱把逻辑思维转变为代码的技术博主 💂 作者主页: 【主页——🚀获取更多优质源码】 🎓 web前端期末大作业…...

快商通推出智能人机对话平台KICP,0代码小样本打造对话机器人
2016年,“百度少帅”顾嘉唯在硅谷的一次讲座中宣称:人工智能的核心场景只有两个,除了自动驾驶就是人机对话。在人工智能领域中,人机对话从图灵提出“图灵测试”开始,就始终是最学术界关注的课题之一。商业领域内&#…...

php微信网页不缓存,微信浏览器取消缓存的方法
这篇文章主要介绍了微信浏览器取消缓存的方法,本文使用meta头信息实现取消了微信浏览器的缓存,特别是在开发时会经常用到,需要的朋友可以参考下。做微信公众号和调试手机页面的时候,避免不了页面要跳转到微信浏览器打开࿰…...

ubuntu 发包和抓包工具的使用
一、介绍 发包工具:packEth 抓包工具:wireshark tcpdump 二、安装 1、安装packEth sudo apt-get install packeth 安装wireshark sudo apt install wireshark 安装tcpdump 二、使用 1、发包 ping命令 sudo packeth L2 Link layer,填写源…...

羧基修饰碳点|羧基修饰碳量子点COOH-CQDs羧基功能化的荧光碳量子点
羧基修饰碳点|羧基修饰碳量子点COOH-CQDs羧基功能化的荧光碳量子点 碳量子点(CarbonQuantumDots,CQDs),作为碳材料界一位新成员,颇受研究 者们的青睐。碳量子点,也可称作碳纳米点,通常都简称为碳点。 碳量子点的制备方法大致可…...

下载和运行GitHub上的代码教程总结
之前做学校的毕业设计,想从Github上下载一个Vue项目作为模板,由于之前没有从gitHbu上克隆项目的经验,结果花了大半天在从github上面把项目克隆下载。现在有时间记录以下,方便其他小伙伴一起学习。 如何从GitHub上下载项目…...

微信浏览器缓存问题的解决方案
微信浏览器缓存问题的解决方案参考文章: (1)微信浏览器缓存问题的解决方案 (2)https://www.cnblogs.com/DreamerLeaf/p/10172238.html (3)https://www.codeprj.com/blog/9b374e1.html 备忘一…...

Flash 编程视频教程
http://tech.163.com/special/F/000915SN/FlashAS.html...

Python爬虫之路4.requests模块post方式,获取肯德基门面信息通过ajax返回的数据-测试(2022.1.3)
1.注,没有实现获取该市的全部信息 2.完整代码 # 获取肯德基门店地址 import requests import json url "http://www.kfc.com.cn/kfccda/ashx/GetStoreList.ashx?opkeyword" headers {"User-Agent":"Mozilla/5.0 (Windows NT 10.0; Wi…...

du -sh查看隐藏文件的大小
du -sh ./* 可以查看可见文件的大小,.开头的不可见文件大小不可查,使用新命令du -sh .[!.]*...

行业研究-全球与中国业务流程文档工具市场现状及未来发展趋势
本文研究全球及中国市场业务流程文档工具现状及未来发展趋势,侧重分析全球及中国市场的主要企业,同时对比北美、欧洲、日本、中国、东南亚、印度等地区的现状及未来发展趋势。 2019年全球业务流程文档工具市场规模达到了xx亿元,预计2026年将达…...

Matlab:使用乘法合并分类数组
Matlab:使用乘法合并分类数组 合并两个分类数组类别的笛卡尔积使用未定义元素的乘法有序分类数组的笛卡尔积此示例说明如何使用 times 函数来合并分类数组,包括有序分类数组和包含未定义元素的数组。当对两个分类数组调用 times 时,将会输出一个包含新类别的分类数组。新类别…...

游戏工作室换IP与挂机的基础知识
许多刚刚做手游工作室的朋友都会遇到一个难题,就是遇到了游戏封号,一分钱没赚到反而赔了不少钱,很苦恼却找不到解决办法,这里给大家普及一下手游防封最基本的事情和一些必须安装的软件(比如代理ip软件)。 如何做游戏防封? 其实…...

bios调整服务器性能模式吗,怎样更改BIOS设置提高显卡性能
使用电脑的时候,都希望自己的电脑软件运行速度快,图片清晰程度高,那么怎样更改BIOS设置提高显卡性能呢?接下来大家跟着学习啦小编一起来了解一下更改BIOS设置提高显卡性能的解决方法吧。更改BIOS设置提高显卡性能方法在BIOS中,一般如下设置:…...

Java高级面试题整理(附答案)
这是我收集的10道高级Java面试问题列表。这些问题主要来自 Java 核心部分 ,不涉及 Java EE 相关问题。你可能知道这些棘手的 Java 问题的答案,或者觉得这些不足以挑战你的 Java 知识,但这些问题都是容易在各种 Java 面试中被问到的,而且包括我…...

微信浏览器缓存怎么清理?
微信浏览器缓存怎么清理? 用微信内置浏览器打开这个网页debugx5.qq.com 或 http://debugtbs.qq.com/ 做微信公众号和调试手机页面的时候,避免不了页面要跳转到微信浏览器打开,调试阶段,android版微信浏览器一直都默认缓存html静态资源&…...
ros develop 相关
ROS中PCL的数据类型转换 - 楸壳 - 博客园1、ROS中的点云数据类型 sensor_msgs::PointClous // 包含 x、y 和 z 点(所有浮点数)以及多个通道; 每个通道都有一个字符串名称和一个浮点值数组 sensor_msghttps://www.cnblogs.com/zhongllmm/p/160…...
R语言核密度估计
核密度估计是在概率论中用来估计未知的密度函数,属于非参数检验方法之一,由Rosenblatt (1955)和Emanuel Parzen(1962)提出,又名Parzen窗(Parzen window)。 假设我们有n个数X1-Xn,我们要计算某一个数X的概率密度有多大。…...

一文看懂蓝牙在物联网中的应用场景
不看这几篇好文,就别说自己了解物联网 简介 蓝牙作为一项发明于上世纪的近距离无线通信技术,在手机,电脑领域已经有了充分地基础,那么这项技术在物联网领域又会有哪些应用场景呢? 蓝牙技术的优势 蓝牙标准是由蓝牙技…...

三种基于CUDA的归约计算
归约在并行计算中很常见,并且在实现上具有一定的套路。本文分别基于三种机制(Intrinsic,共享内存,atomic),实现三个版本的归约操作,完成一个warp(32)大小的整数数组的归约…...

Android开发——实现数字时钟
前言 在最近的项目当中,我遇到一个在界面中实现系统数字时钟的需求。一看这个其实挺简单的,开个一个子线程获取当前的系统时间睡眠1分钟发送当前时间,然后利用Handler去修改当前显示的时间,直接撸代码。 第一种:HandlerThread …...

Flash视频教程一把抓,自动获取Flash教程----谭石南
——另类下载 Flash真是一个神奇的软件,我们不仅可以利用它制作精美的动画,还可以用它来做成Flash的小游戏。要想把Flash学好也不是一件容易的事,在课堂上老师只给我们讲了一点入门的知识,利用这些还不能做成完整的动画制作。但就…...

一键搭建自己的网络加速器
一键搭建自己的vpn如何安装使用如何搭建服务器如何使用客户端如何安装使用 程序链接: https://github.com/ChengZu/easyvpn 文件说明: build/EasyVpn.jar为服务器程序 build/app-release.apk为android客户端程序 如何搭建服务器 我这里讲在ubuntu下的搭建 安装…...

java面试之常见场景题
1.线程安全的单例模式 //饿汉式 线程安全的 class danlie1 {private danlie1(){}private static danlie1 dnew danlie1();public static danlie1 get(){return d;} } //懒汉式 线程不安全 class Single {private Single(){}private static Single dnull;public static Singl…...

8086CPU 的寻址方式(重点)
8086CPU 的寻址方式8086 CPU寻址方式(重点)一、立即寻址二、寄存器寻址三、存储器寻址1,直接寻址2,寄存器间接寻址3,基址寻址4,变址寻址5、基址变址位移寻址6,基址变址寻址指令就是计算机完成某种操作的命令。机器指令…...

html如何添加多个视频教程,html多格式视频教程
html多格式视频教程[2021-02-20 05:54:15] 简介:php去除nbsp的方法:首先创建一个PHP代码示例文件;然后通过“preg_replace("/(\s|\ \;| |\xc2\xa0)/", " ", strip_tags($val));”方法去除所有nbsp即可。推荐:《…...

核密度估计python_机器学习 – 具有固定协方差的高斯核密度估计(使用python)
我可以通过简单的运行使用scipy库执行高斯核密度估计from scipy import statskernel stats.gaussian_kde(data)但是我想将协方差修正为某个预定义值并用它来执行KDE.有没有一种简单的方法可以在没有明确编写优化过程的情况下在python的帮助下实现这一点(如果没有现有的库提供这…...

FusionCompute集群知识
文章目录一、集群策略1、主机内存复用2、负载均衡3、NUMA4、HA5、计算资源调度6、IMC一、集群策略 1、主机内存复用 内存复用使用了三种技术,内存共享、内存置换、内存气泡 内存共享 所有的虚拟机共享一段内存,共享的内存段是只读的内存置换 我们在Li…...

潭州教育学python_潭州教育-Python学习笔记6@函数基础,必备参数,位置参数,可选参数...
6.1 函数定义: def BiJiao(a,b): #驼峰规则(首字母大写),见名知意-函数名大写 if a>b: print(a) elif ab : print(xiangdeng) else: print(b) 运行: BiJiao(1,3) 3 6.2函数参数-默认参数、可选参数、必备参数 6.2.1,无参数 def…...
LSD直线检测和霍夫线变换的学习建议
最近笔者学习霍夫线变换和LSD直线检测算法,有一些学习建议,希望可以给予大家一些帮助。 学习霍夫变换的感想 每个人理解的霍夫变换或许略有差异,但是最主要的是笛卡尔坐标系跟极坐标系的相互转换。 霍夫变换分为标准霍夫变换(SHT&…...

Qt QML加载和使用字体
Qt QML加载和使用字体 加载函数 bool loadFonts(const QString &baseFile) {QString assetsPath qApp->applicationDirPath();QString path assetsPathQStringLiteral("/fonts/");QString fontFile pathbaseFile;const…...

python毕业设计作品基于django框架个人博客系统毕设成品(7)中期检查报告
整个项目包含了:开题报告 开题报告PPT 任务书 中期报告 论文模板 答辩PPT等 项目源码 主要安介绍了系统在开发过程中所应用到的一些关键的技术 主要python技术介绍;框架Django概要;MySQL数据库知识; 以及常规的网页技术HTM…...

百度首页HTML(简单代码)
百度首页HTML(简单代码) 新手小白在练习阶段,如果有什么好的建议可以给我留言哦 html代码 <body><div class"nav"><div class"navleft"><a href"#">新闻</a><a href"#">hao123</…...

Android测试工具-Monkey详解
Monkey详解Monkey详解一 Monkey简介二 Monkey测试环境配置三 执行Monkey四 常用monkey命令五 Monkey测试问题分析Monkey详解 一 Monkey简介 Monkey是Android SDK自带的工具,其原理是利用socket通讯(Android客户端与服务器以TCP/UDP方式)&am…...

Java坦克大战
目录 项目git地址:https://gitee.com/java-course-design_1/java-programming-tank-game 项目简介: 项目技术: 功能需求分析 功能架构图: 编写思路及部分代码 游戏窗口初始化 坦克类的定义 地图类 游戏常量类 优化 &…...

Android TV开机优化
Android开机优化相关点 1 关键路径 bootloader > kernel > init > zygote > system server > launcher 2 打印优化 2.1 关闭bootloader打印 2.2 关闭 kernel打印 2.3 提高Android log打印等级 system/core/logd/LogBuffer.cpp int get_log_level() {char …...

Mybatis(3)
朋友们大家好,我们又见面了,回顾上一章我们简单了解了Mybatis优化等,下面让我们先来简单的回顾一下: 回顾: 1. mybatis的优化 ① 引入数据库属性文件 ② 引入日志文件 ③ 解决列名和属性名不一致。【1】起别名--与属性名一致…...

国际海运、陆运、空运有什么优点和缺点?
陆运多是是指汽车运输的,距离短,快,可以实现门到门的运输,费用成本较高的,适合内陆的运输,距离不要太长的城市间 海运多数就是出口了,当然中国也有南北航线,走沿海的,也不错.适合距离远的,货物多时间要求没有那么严格的,像是家具啊,板材啊,工具啊什么的,现在也有海运的冷藏箱的…...

oracle时间比较
今天在学习公司的项目中,发现了些问题,在这里记录下。 因为以前培训的时候,培训老师觉得oracle安装卸载麻烦就没教。所以oracle只是略懂而已,很多东西还不清楚,就比如今天遇到的问题,oracle的时间比较。 …...

辗转相除法的原理
...

加密狗的选择
李国帅 2011.10.12 在2011年使用过加密狗,一些使用经过记录下来。聊胜于无,也许可以给人帮助。说明: 前期筛选了4家,仔细了看了其网站和介绍。其中广州亚斯技术力量太差,不再考虑;对于以下三家产品做了一些…...
移动端手机横屏事件
移动端中添加了 orientationchange 事件,以便开发人员能够确定用户何时将设备由横向查看模式切换为纵向查看模式。移动端的 window.orientation 属性中可能包含3个值:0 表示肖像模式, 90 表示向左旋转的横向模式(“主屏幕”按钮在…...

《白话大数据与机器学习》
白话大数据与机器学习第四章高斯距离 曼哈顿距离同比和环比高斯分布(正态分布)泊松分布伯努利分布第六章 信息论信息量香农公式信息熵多维空间第八章 回归(分类算法)线性回归过拟合欠拟合第九章 聚类9.1 K-means 算法9.3 孤立点9.…...

海康Ehome协议服务端搭建
概述一.海康EHome协议预览流程1.0 简介1.1.流程图1.2.ehome协议接入步骤二.设备注册报文2.2.Device to Platform 海康设备注册后会主动连接配置的ehome平台2.3. ehome平台在收到设备注册指令后三.预览请求报文3.1. Platfrom>>Device, ehome平台发起预览3.2. D…...

无内鬼来点干货,银行java开发面试题(含答案)
目录前言1、在多线程环境中使用HashMap会有什么问题?在什么情况下使用get()方法会产生无限循环?2、不重写Bean的hashCode()方法是否会对性能带来影响?3、对于一个不可修改的类,它的每个对象是不是都必须声明成final的?…...

腾讯T1~T9工程师技术剖析以及评定标准、能力要求
今天给大家分享的是由腾讯内部制定出来的岗位T1—T9级别,具备的专业知识能力技术点,至于知识点掌握的深度就看大家对技术点知识点理解的程度,个人而言知识点理解的程度跟你定位的级别是有很大的关系。 很多朋友跟我说在学习编程的过程中不知…...

《MLB棒球创造营》:走近棒球运动·多伦多蓝鸟队
多伦多蓝鸟队(英语:Toronto Blue Jays),是位于加拿大多伦多的美国职棒大联盟队伍。他们隶属于美国联盟(以下简称美联)的东区,并是唯一曾经赢得世界大赛冠军的加拿大球队。由于蒙特利尔博览队在2…...

如何实现产品外观智能质检?百度产品外观瑕疵质检来帮忙
一些比较精密的产品,外观上的瑕疵靠人工是难以发现的,那该怎么办呢?如何实现产品外观智能质检?莫慌莫慌,百度产品外观瑕疵质检来帮忙,下面小编给大家做详细介绍: 产品外观瑕疵质检 智能…...

微信浏览器缓存问题
移动端缓存问题 1.html5 解决方案如下: 在每个页面头部添加禁止缓存代码 <meta http-equiv"pragma" content"no-cache"/> <meta http-equiv"expires" content"0"> 禁止缓存效果不明显 2.通过修改文件名称&…...

qt输出自定义的pdf文件源码详解
qt中有两种方式可以输出pdf: 方式1:使用QPrinter即打印机的方式打印pdf 这种方式,在qt4成为唯一的方式。 QPrinter printer(QPrinter::HighResolution); //高清晰度 printer.setPageSize(QPrinter::A4); //设置纸张大小 pri…...

(原文)基于甘特图的深度强化学习方法求解端到端在线重调度
获取更多资讯,赶快关注上面的公众号吧! 文章目录介绍关注公众号,后台回复"甘特图"获取原文新方法重调度环境优化目标重调度策略重调度方法调度状态表达调度动作奖励函数训练算法马尔可夫决策过程实验结果实验1:紧急插单…...

优秀笔记课件——操作系统的使用和优化
1 1 第二章 操作系统的使用和优化 一、全面优化 Win XP 二、 Win XP 的实用技巧 三、Win 2K 快速操作技巧 2 2 一、全面优化 Win XP 1 、 缩短等待时间 打开注册表编辑器,找到 HKEY_LOCAL_MACHINE \ System \ CurrentControlSet …...

html让文本框左剧中对齐_Python批量设置pptx文件中文本框边框与填充样式(含20分钟视频讲解)...
近期会议:10月30-11月1日 全国高校Python课程高级研修班(苏州)推荐图书:《Python程序设计(第3版)》,(ISBN:978-7-302-55083-9),董付国,清华大学出版社,2020年6月第1次印刷,8月第4次印…...

excel数据处理_excel数据处理技巧:提取文件名的方法汇总
编按:哈喽,大家好!前段时间我们和大家分享了使用BAT命令提取文件名称的方法,不少小伙伴都被这个命令给惊艳到了。其实,提取文件名称的方法远不止这一种,甚至还有比BAT命令更简单的方法,赶紧来看…...

word怎么批量加前缀
在日常职场办公中,我们常常会遇到word需要加前缀的情况,大部分情况下文件比较少的,只需要手动右击‘重命名’一个个修改即可。但是在大型公司或是高校进行管理的职场,我们就很有可能碰到上百文件需要加前缀的场景。那么word怎么批…...

使用Python批量修改PPTX文件中文本框格式
问题描述:最近正在整理Python教材的配套PPT,原来的PPT是4:3的,考虑到现在很多屏幕都是宽屏的,于是打算重新整理一下。对于正常的幻灯片,直接在“页面设置”中修改一下就可以,但是有一章PPT由于反复修改了多…...

Python小程序--听课做笔记 + 练习,批量复制模板到每一个文件夹,并且改为和课件相同的文件名
Before > 这是原来的情况: Now > 这是运行程序之后: 小程序如下 > Author: Liang LastEditors: Liang Date: 2020-07-26 18:14:20 LastEditTime: 2020-07-26 19:27:49 Email: str-liangoutlook.com FilePath: /undefinede:/BaiduNetdiskDownlo…...
windows的BAT或者linux的VI下批量更改替换文件名的脚本
windows的BAT或者linux的VI下批量更改替换文件名的脚本 本来离开写脚本有些日子了,倒是现在有些文件处理或者EXCEL工作簿要处理的话,还是会用简化流程来处理。脚本函数则帮我解决了很多麻烦事。 昨天我整理文档,里面有一大堆后缀名相同的文件…...

python批量提取文件名到excel_excel图文教程:批量提取若干文件夹中的文件名
编按:哈喽,大家好!今天老菜鸟要给大家分享一个批量操作的神级技巧:批量提取文件名。简单三步,就能提取出成百上千个文件名称。学习更多技巧,请收藏部落窝教育excel图文教程。今天要分享的这个技能ÿ…...

数仓中的数据对象及相关关系的解读
为实现不同的功能,GaussDB(DWS)提供了不同的数据对象类型,包括索引、行存表、列存表及其辅助表等。这些数据对象在特定的条件下实现不同的功能,为数据库的快速高效提供了保证,本文对部分数据对象进行介绍。…...

2020年IEEE Fellow刚刚揭榜!超70名华人入选
本文来自“会议之眼”公众号 今天,2020年IEEE Fellow名单正式公布,一共新增282名Fellow。华人约75人当选、其中中国大陆23人当选。当选的中国大陆 Fellow来自清华大学、北京大学、上海交大、电子科技大学等机构。 在新的名单中,我们看到了一…...

ITN网络课程笔记(四)
物理层物理层1、物理层的用途1.1、物理连接1.2、物理层2、物理层的特征2.1、物理层标准2.2、物理组件2.3、编码2.4、信令铜缆光缆无线介质2.5、带宽2.6、带宽术语3、铜缆布线3.1、铜缆布线的特征3.2、铜缆布线的类型3.3、非屏蔽双绞线(UTP)3.4、屏蔽双绞…...

Spring学习:二、Bean的管理
4. Bean的管理 Spring的基本Bean管理包括Bean配置,Bean实例化和Bean的依赖注入。这些管理可以通过手工编码的方式把每个Bean注册到容器中,也可以通过properties文件和xml文件配置Bean和Bean之间的依赖关系。通常我们的配置方式是XML作为配置文件。 …...
java字符序列_字符序列(CharSequence)
字符序列(CharSequence)1、相关接口java.lang.CharSequence 接口java.lang.Appendable接口java.lang.Comparable接口java.io.Seralization 接口2、java.lang.String2.1、概念:String 是个类 character strings 才是字符串1、在 Java 语言中 直接使用 “” 引起来的多…...

数据分析中的降维方法初探
0. 引言 0x1:降维定义 降维是将高维数据映射到低维空间的过程,该过程与信息论中有损压缩概念密切相关。同时要明白的,不存在完全无损的降维。 有很多种算法可以完成对原始数据的降维,在这些方法中,降维是通过对原始数据…...

图像相似性搜索的原理
本文转自: 相似图片搜索的原理 相似图片搜索的原理(二) http://www.hackerfactor.com/blog/index.php?/archives/432-Looks-Like-It.html http://www.ruanyifeng.com/blog/2011/07/principle_of_similar_image_search.html http://blog.s…...

基于51单片机的压力监测仪(MPX4115)(Proteus仿真+程序)
编号:28 基于51单片机的压力监测仪(MPX4115) 功能描述: 本设计由51单片机最小系统MPX4115压力传感器ADC0832模块液晶1602模块 1、主控制器是AT89C82单片机 2、MPX4115压力传感器采集气压力,通过ADC0832模数转换器进行A/D转换,读…...

盐城大数据产业园人才公寓_5亿!高新区正邦大数据产业园开工!配套人才公寓…...
近日,位于高新区正邦大数据产业园项目正式举行了开工仪式,据了解该项目位于艾溪湖一路569号,总投资约5亿元。项目举行开工仪式2020年10月13日上午,正邦大数据产业园项目在高新区正邦园区内举行了开工仪式。据了解,该项…...

2021年“全球乳业20强”榜单发布;全新版希尔顿花园酒店计划2025前在中国开业超200家 | 美通社头条...
要闻摘要:2021年“全球乳业20强”榜单发布。全新版希尔顿花园酒店计划2025前在中国开业超200家。福布斯将在纽交所上市。凌科药业完成5000万美元B轮融资。原力生命完成1亿美元融资。康桥资本完成投资超声刀企业安和加利尔。ADI完成对Maxim Integrated的收购。中化国…...

2021年国家统计局发布全国统计用区划代码和城乡划分代码
说明: 1、数据来源于国家统计局官网网站 2、数据包含省市区三级区划代码 3、不含港澳台 在做三级索引时,省代码可以取前2位,市代码取前4位 省信息: 北京市 - 110000 市信息: 市辖区 - 110100 城市信息: 东…...

【工业大数据】工业大数据:构建制造型企业新型能力
2015年5月8日,国务院公布《中国制造2025》,这是中国版的“工业4.0”规划。该规划提到“加快推动新一代信息技术与制造技术融合发展,把智能制造作为两化深度融合的主攻方向。大数据时代,利用大数据驱动业务发展,打造企业新型能力势…...

江苏大数据联盟成立
16日至17日,以“网联万物 数知天下”为主题的2016中国大数据企业大会在盐城召开。大会从政策法规、技术实践和产业应用等角度深入探讨大数据产业发展面临的机遇与挑战,华为、微软、IBM、浪潮、京东、小米等数百家企业近千人参会。 盐城顺应大数据发展浪潮…...

大数据:作为新产业接入老城市正是时候
践行“大数据国家战略”江苏盐城有规划、有行动。日前,江苏盐城举办了2016中国大数据企业大会,大数据产业“西有贵阳、东有盐城”的发展格局已初步形成。《中国企业报》记者在盐城市采访时,人们普遍都在讨论一个话题,盐城为什么会…...

网联万物 数知天下 2016中国大数据企业大会在江苏盐城召开
4月16日,以“网联万物,数知天下”为主题的2016中国大数据企业大会在盐城成功举办。北京大学教授、工业和信息化部原副部长杨学山,工业和信息化部信息化和软件服务业司司长谢少锋出席大会并讲话,江苏盐城市委书记朱克江、江苏省经信…...

盐城市启动新能源大数据管理平台建设
为全面落实国家《关于推进“互联网”智慧能源发展的指导意见》,推进盐城市能源互联网建设,10月11日,盐城市发展改革委联合远景能源公司召开盐城市新能源大数据管理平台建设推介会,正式启动远景能源全球能源互联网平台(…...

数“聚”天下 盐城开启产业先导新时代
4月16日至17日,以“网联万物,数知天下”为主题的2016中国大数据企业大会将在盐城举办。本次大会将以国际化的视野,从政策法规、技术实践和产业应用等角度深入探讨大数据产业发展面临的机遇与挑战,作为大数据产业界、科技界与政府部…...

城南新区8项目进入省大数据重大项目库
3月3日,记者从城南新区了解到,该区盐城软通动力大数据产业园、华为云计算数据中心、华东(江苏)大数据交易中心、公共大数据服务平台等8个项目已进入省大数据重大工程项目库,占全市总量的66.7%。 正在建设中的盐城软通动…...

江苏省经信委、盐城市政府、华为三方签约 共筑云计算大数据产业发展新篇章...
2016年10月22日, 由工信部信软司、江苏省经信委和盐城市政府三方联合举办的“共建盐城国家级大数据产业基地推进会”在北京如期召开。在推进会上,江苏省经信委、盐城市政府与华为公司签署战略合作协议,三方围绕云计算、大数据、物联网展开全方位、深层次…...

用大数据助推产业转型
我国大数据运用的广度和深度逐渐加强 ——用大数据助推产业转型 日前,在江苏省盐城市举行的中国大数据企业大会上,来自大数据相关学界、政界、商界的精英从政策法规、技术实践和产业应用等角度深入探讨大数据产业发展面临的机遇与挑战,共同探…...

Kaggle Feedback Prize 3比赛总结:如何高效使用hidden states输出(1)
比赛链接:https://www.kaggle.com/competitions/feedback-prize-english-language-learning FeedBack 3 kaggle 主要使用了Transformer类的模型进行。对于如何使用高效transformer输出完成任务,本系列做了一些常见用法的总结。 hugging face中bert类的…...

工信部与江苏省共建国家级大数据产业基地
27日,江苏首个部省市共建国家级大数据产业基地正式签约,力争建成千亿级产业集群,为全国大数据产业发展探路。 工信部信息化和软件服务业司司长谢少锋说,为抢抓互联网经济发展机遇,推动大数据产业快速集聚发展ÿ…...

盐城发力大数据产业 今年力争实现百亿产出
国内大数据产业有望形成“西有贵阳,东有盐城”格局。 “去年一年,盐城从零起步,实现了100多亿元投资,建起100多万平方米的产业园,引进100多个大数据产业项目。”在16日举办的2016中国(盐城)大数…...

盐城出台推进大数据产业发展实施意见
日前,盐城市政府印发了《关于推进大数据产业发展的实施意见》(下称《实施意见》),从指导思想、推进原则、发展目标、发展方向、重点工程和保障措施六个方面明确了盐城市加快培育和发展大数据产业的具体实施意见,这是该…...

大数据“示范区”满天飞,可你真的了解吗?
自从2015年9月国务院发布《促进大数据发展行动纲要》以来,我们经常能听到“国家大数据综合试验区”、“大数据示范基地”、“大数据产业园区”等既相似却又不同的词汇,那么他们到底是指什么?又有何不同?应该说,正确理解…...

盐城大数据提“颜值”增“气质”
高“颜值”引来高关注度。近日,国家信息中心、南海大数据应用研究院联合发布了《2017中国大数据发展报告》,在全国大数据产业园区关注度排名中,盐城大数据产业园关注度达82.3%,比排名第二高出10.74个百分点。 国家制造业大数据高新…...

盐城大数据产业园汇聚量3.75亿条 苏北第一
7月31日上午,盐城晚报记者从城南新区党工委工作会议上了解到,今年上半年,该区完成大数据等新兴产业投资39亿元,占固定资产投资比重超五成,新兴产业已逐步成为该区经济的重要增长点。 上半年全区新签约产业项目59个、新…...

盐城大数据产业园人才公寓_盐城市大数据产业园大步流星
现代快报讯(通讯员 孙怡)完成总产值12.32亿元,完成固定投资5000万以上项目5个,累计完成投资额4.01亿元……12月1日,从盐城市大数据产业园管理办传来消息,今年前三季度,该管理办坚持项目为王,加大招商引资推…...

盐城大丰掘金大数据 产业园产业规模达5亿元
我们正处在一个数据量爆发增长的时代, 当今的信息产业呈现出前所未有的繁荣,新的互联网技术不断涌现,技术革新使数据生产能力呈指数级提升,属于大数据的时代已经到来。站在这样一个风口,创新争先的大丰人把握良机&…...

Unity获得汉字拼音或首字母
NPinyin Debug.Log(Pinyin.GetInitials("你萌死了")); 比微软那个劳什子好用多了...

Unity2021如何设置中文模式
下载好后打开一个新的项目,显示如下的界面: 都是英文的,这时候需要关闭这个项目,在 Unity Hub中找到安装,给软件添加一个模块: 勾选简体中文: 之后打开新项目,点击左上角的edit&…...

01.Unity设置成为中文
Unity设置成为中文1 .设置 Unity Hub 为中文2. 下载 Unity Editor 语言包3. Unity Editor 设置成中文1 .设置 Unity Hub 为中文 点击齿轮的 偏好设置 点击 偏好设置---外观---语言 2. 下载 Unity Editor 语言包 前提是 Unity Hub里 安装完 Unity编辑器。 打开UnityHub---安装…...

PTA python 输出前 n 个Fibonacci数
本题要求编写程序,输出菲波那契(Fibonacci)数列的前N项,每行输出5个,题目保证输出结果在长整型范围内。Fibonacci数列就是满足任一项数字是前两项的和(最开始两项均定义为1)的数列,例…...

PTA | 实验三 输出前 n 个Fibonacci数
本题要求编写程序,输出菲波那契(Fibonacci)数列的前N项,每行输出5个,题目保证输出结果在长整型范围内。Fibonacci数列就是满足任一项数字是前两项的和(最开始两项均定义为1)的数列,例…...

输出前 n 个Fibonacci数
本题要求编写程序,输出菲波那契(Fibonacci)数列的前N项,每行输出5个,题目保证输出结果在长整型范围内。Fibonacci数列就是满足任一项数字是前两项的和(最开始两项均定义为1)的数列,例…...

输出第N个斐波那契数
斐波那契数 什么是斐波那契数? 斐波那契数列(Fibonacci sequence),又称黄金分割数列。斐波那契数列的排列是:1,1,2,3,5,8,13,21&…...

每日一数——使用函数求Fibonacci数
✨Fibonacci(斐波那契数)📙斐波那契数列简介:📗斐波那契数列在C语言中的求解:1.📃常规求解:2.函数递归法:📘青蛙跳问题:问题概述:问题…...

C语言——使用函数输出指定范围内的Fibonacci数
题目来源——浙大版《C语言程序设计(第3版)》题目集 本题要求实现一个计算Fibonacci数的简单函数,并利用其实现另一个函数,输出两正整数m和n(0<m≤n≤10000)之间的所有Fibonacci数。所谓Fibonacci数列就…...

用C语言实现斐波那契数
如何用C语言实现斐波那契数 首先要理解以下斐波那契数的概念 斐波那契数列指的是这样一个数列“ 0, 1, 1, 2, 3, 5, 8, 13, 21, 34, 55, 89, 144, 233,377,610,987,1597,2584,4181,6765&#x…...

使用函数输出指定范围内的斐波那契数
题目描述: 本题要求实现一个计算Fibonacci数的简单函数,并利用其实现另一个函数,输出两正整数m和n(0<m≤n≤10000)之间的所有Fibonacci数。所谓Fibonacci数列就是满足任一项数字是前两项的和(最开始两项…...

C语言 打印斐波那契数
大家好!今天来打印斐波那契数。 首先,斐波那契数: 斐波那契数列(Fibonacci sequence),又称 黄金分割 数列,因数学家莱昂纳多斐波那契(Leonardo Fibonacci)以兔子繁殖为…...

使用函数输出指定范围内的Fibonacci数
本题要求实现一个计算Fibonacci数的简单函数,并利用其实现另一个函数,输出两正整数m和n(0<m≤n≤10000)之间的所有Fibonacci数。所谓Fibonacci数列就是满足任一项数字是前两项的和(最开始两项均定义为1)…...

c++实现斐波那契数
斐波那契数,通常用 F(n) 表示,形成的序列称为 斐波那契数列 。该数列由 0 和 1 开始,后面的每一项数字都是前面两项数字的和。也就是: F(0) 0,F(1) 1 F(n) F(n - 1) F(n - 2),其中 n > 1 给你n &…...

斐波那契数——
文章目录思路 了解数的规律根据规律得出公式代码展示思路 了解数的规律 斐波那契数列指的是这样一个数列 1, 1, 2, 3, 5, 8, 13, 21, 34, 55, 89, 144, 233,377,610,987,1597,2584,4181,6765&a…...

jetson nano 网络配置
1.文件 sudo vim /etc/network/interfaces2.设置ip 网关 auto eth0 iface eth0 inet staticaddress 192.168.31.101netmask 255.255.255.0gateway 192.168.31.13 编辑dns sudo vim /etc/systemd/resolved.conf4.设置dns...

Jetson Nano 关机、重启命令
如果觉得本篇文章对您的学习起到帮助作用,请 点赞 关注 评论 ,留下您的足迹💪💪💪 1、重启命令: sudo reboot2、关机命令: sudo shutdown now希望文章内容可以帮助到你!&#x…...

jetson nano 报错Illegal instruction(core dumped)
jetson nano 报错Illegal instruction(core dumped) 问题描述:好不容易对jetson nano开发板更换好镜像源、配置好远程xrdp桌面(可以参考我往期博文),部署好项目运行时,确出现以下错误: Illegal instructio…...

Jetson nano——控制风扇旋转速度的方法
一、原理解释 风扇采用的是PWM控制,echo值为0-255。又由PWM的原理,得到echo值大于123的时候,风扇才会选转,并且数值越大,风扇旋转速度越快。 二、示例代码 打开终端,输入对应代码,即可实现对…...

nano语法高亮
nano语法高亮 nano编辑器为几种语言和脚本提供语法高亮显示。查看/usr/share/nano/ 将它们链接到~/.nanorc中用户的nano配置文件,其中包含与此行类似的内容: piraspberrypi:~ $ cat ~/.nanorc include /usr/share/nano/sh.nanorc注意:如果没…...

Jetson Nano 安装 jtop
从 NVIDIA 官网下载 Jetson Nano 2G 系统镜像,制作好系统盘后,启动 Nano,设置登录用户的账户信息后,我决定先安装 jtop。 1. 安装依赖包 有文章推荐先安装这几个包,我遵循步骤安装上了,但不知道是否有用。…...

Jetson Nano设置风扇自启动
Jetson Nano跑一些如目标识别等需要较大计算量的程序,散热板会非常的热,为避免主板过热,通常在散热板上加装一个风扇增强散热。 风扇需要软件指令进行驱动,驱动风扇的指令为 $ sudo sh -c ‘echo xxx > /sys/devices/pwm-fa…...

jetson nano的a02与b01混用
背景: 我的b01的usb口莫名其妙的坏掉了(如果有懂得人请评论告诉我),所以我借了一块a02的板子,但是它跑yolov5会掉电死机(如果有懂得人请评论告诉我)。所以我将b01的主板放在了a02的载板上。 在…...

word里如何在□里打√!框框里打勾
按住键盘上的ALT键不放,然后输入“9745”这几个数字,最后松开 ALT 键,自动变成框框中带 √ 符号。 按住键盘上的ALT键不放,然后输入“9746”这几个数字,最后松开 ALT 键,自动变成框框中带 符号。...

如何在word里面输出框框 里有勾√
在Word文档中输入数字“2611” 然后按下键盘上的快捷键 ALT X 此时,这几个数字就会转换成方框内打钩符号...

sublime text3 去除python代码的白色框框方法
这个原因是由于anaconda插件的原因,如下图: 解决方法: Sublime --> Preferences --> Package Settings --> Anaconda --> Settings User 中设置关闭: { "anaconda_linting":false }...

电脑汉字显示框框的问题
win10电脑,这几天用着,突然从vs,svn,飞秋,ie汉字都显示框框了,连为解决问题下载的360安装界面也是框框,试了好多方法没用,最后从一台正常的win10上拷贝c:\windows\fonts到我电脑的c:…...

java 将数据生成word文档,并实现打勾选择框
1.建立word文档模板 2.word模板建立好之后放到指定路径下,这里放到D盘根目录测试 3.{{}}这两个中括号里面的标签就是java中需要注入的变量 4.java代码 public static void main(String[] args) throws FileNotFoundException, IOException {XWPFTemplate template = XWP…...

pygame里显示中文文本是框框问题
依然是python学习书里,飞船射击外星人游戏项目…… 其中添加play按钮,我想添加中文的‘开始游戏’,但是显示出来是框框 解决办法: step1…… 将一个中文字体文件,如宋体的字体文件(从电脑C盘Windows文件…...

putty里中文显示为框框和乱码无法显示中文解决
故障如上图 请检查你系统的语言设置。本人由于设置了是新加坡中文,请更改为中文中国后重启。 另外如遇到以下情况可以按一下步骤解决: 如何解决Putty登录中文显示乱码问题。 1、在使用putty连接登录Linux时,发现了终端下显示乱码࿰…...

Mac复制word内容后会出现小框框标记,怎么也取消不掉
Mac复制word内容后,会出现小框框标记,怎么也取消不掉!!! 2021年11月15日20:03:04 我的天,困扰我好久的问题,终于解决了!!! ①复制前 ②复制后:…...

怎么在word中加入可以打勾的框框?
一、在Word里输入带方框的数字或在方框中打对号的方法方法1: 在Word中,选择“插入”→“符号”,选择字体为“Wingdings”,在倒数第二个特殊字符既是方框中有对号的特殊字符。 方法2: 另一种更好的方法是先用软键盘上的…...
去掉Sublime text 3中的框框
出现了下面这种框框一般是在Sublime Text 3 中安装了Pylinter这种代码检查插件 去掉框框只需要隐藏这个插件即可:ctrlshiftp —>pcd—->Package Control:Disable Package—->Pylinter 这样就能取消代码检查的功能,重启ST3,保存代…...

关于使用Word过程中如何快速键盘打出一个框框、一个打勾的框框、一个打叉的框框
经常使用Word工具的童靴们经常会遇到这样的情况,在一些 选项面前有一些 “框框”,事实上这份文档打印出来的话,那在这个框框里面✔是很方便,(直接用笔✔就行)但是在一些创新创业项目,一些居民信…...

平面UI设计学起来容易吗?就业率如何?
平面UI设计学起来容易吗?就业率如何? 互联网快速发展,应运而生了众多的行业及职位,让技术人员迎来发展的春天,想要高薪就业吗?想要拥有一门过硬的技术吗?那就来广州传智播客平面UI设计培训机构一起学习吧…...

ui设计和平面设计区别,平面设计好还是ui好
ui设计和平面设计区别,平面设计好还是ui设计好。很多刚接触到平面设计或者ui设计的人,或许觉得这二者没有区别,或者说区分不清楚。觉得ui设计也是干着平面设计的活,那么事实是怎么样的呢,今天我们就一起来看一下这两者…...

最炫丽的网页平面UI课程就在广州传智播客
最炫丽的网页平面UI课程就在广州传智播客 哪里的网页平面UI课程最酷最炫,当然是广州传智播客了。传智播客广州网页平面UI培训课程分为六个阶段。 第一阶段:食品包装设计、企业形象识别系统设计、伊利牛奶广告海报。 第二阶段:平面广告设计 第…...
平面设计与UI设计有什么不同之处
本文由:“学设计上兔课网”原创,图片素材来自网络,仅供学习分享 平面设计与UI设计有什么不同之处?说起平面设计,大家不会觉得陌生,以前人们的信息渠道在于各种纸媒,平面设计大都比较吃香。随着…...

人工智能轨道交通行业周刊-第32期(2023.1.30-2.5)
本期关键词:智能装车系统、南昌地铁巡检机器人、中国铁道学会科学技术奖、AIGC报告、智慧城市 1 整理涉及公众号名单 1.1 行业类 RT轨道交通中关村轨道交通产业服务平台人民铁道世界轨道交通资讯网铁路信号技术交流北京铁路轨道交通网上榜铁路视点ITS World轨道交…...

【NLP】一种基于联合方式的三元组抽取模型——CasRel
前言 关系抽取是自然语言处理中一个比较基础的任务,除了关系抽取之外还有类似的任务如:属性抽取等。这些任务也都可看成三元组抽取,即(subject,predicate,object)。常见的抽取范式包含: 基于pipeline的分布抽取方式,在已知两个实体subject和object,去预测predicate。…...

Google《Android性能优化》学习笔记一
Google近期在Udacity上发布了Android性能优化的在线课程,分别从渲染,运算与内存,电量几个方面介绍了如何去优化性能,这些课程是Google之前在Youtube上发布的Android性能优化典范专题课程的细化与补充。下面是本文作者胡凯me对渲染…...

Linux网络技术管理及进程管理
OSI七层模型和TCP/IP四层模型 OSI七层模型:OSI(Open System Interconnection)开放系统互连参考模型是国际标准化组织(ISO)制定的一个用于计算机或通信系统间互联的标准体系。 TCP/IP四层模型:TCP/IP参考模…...

计算机知识大讲堂,计算机知识大讲堂,电脑系统革新构成
新一代电脑不仅从工作原理上已经悄然改变很多,电脑系统的构成也随之改变。为方便说明这里将电脑的系统构成分为逻辑构成和物理构成,具体更新分别说明如下根据传统的冯诺依曼体系思想,电脑系统可分成五大逻辑部件,但其内涵已经悄然…...

电脑蓝屏死机
电脑蓝屏死机 2010年11月16日死机的问题,或许从大家使用电脑开始起的那一天就时刻伴随着你,这也许是我们在日常使用电脑过程中最常遇到的问题之一了。造成死机的原因多种多样,让人很难捉摸。这种问题在DOS系统时代,或许还比较好解…...

onebot 开发板_onebot一体机,这是一款简单方便的电脑
一体机,就是PC发展史上“创新”的代名词。在台式机炙手可热的时候,苹果率先开拓了一体机市场,由于技术与成本的限制,虽然未能真正颠覆传统台式机的统治地位,但是一体机抢占了不少台式机的份额,而且动摇了笔…...

菜鸟面京东
我背着包在成都被污染的空气中踽踽独行,沿着二环,神情有些萧索,不时发出几声咳嗽,却沉静于自己的思绪。 刚刚从华为那边的中兴赶过来,已经五点过了,海滨酒店的走廊里或坐或站着十数人,我忍受着疲…...
京东时尚“质感”升级,成为时尚产业新T台
3月1日,京东蝴蝶节“化蝶盛典”在北京隆重举行。发布会上,京东集团副总裁、京东商城时尚生活事业群时尚事业部总裁丁霞表示,2018年,京东要做有质感的时尚电商,在品牌品类、个性化产品、服务体验等多方面,为…...

直新笔试题
两小时内完成京东时尚大牌页面,使用JS加分 完成效果 可以使用JS,或者JQuery生成数据,加分项 <!DOCTYPE html> <html lang"en"> <head><!-- 必须的 meta 标签 --><meta charset"utf-8"><meta nam…...

Linux网络技术管理及进程管理(week2_day4)--技术流ken
OSI七层模型和TCP/IP四层模型 OSI七层模型:OSI(Open System Interconnection)开放系统互连参考模型是国际标准化组织(ISO)制定的一个用于计算机或通信系统间互联的标准体系。 TCP/IP四层模型:TCP/IP参考模型…...

Dubbo----------------------------配置信息整合SpringBoot的三种方式
1.启动时检查 在启动时检查依赖的服务是否可用 Dubbo 缺省会在启动时检查依赖的服务是否可用,不可用时会抛出异常,阻止 Spring 初始化完成,以便上线时,能及早发现问题,默认 check“true”。 可以通过 check“false”…...

网络与进程管理
OSI七层模型和TCP/IP四层模型 OSI七层模型:OSI(Open System Interconnection)开放系统互连参考模型是国际标准化组织(ISO)制定的一个用于计算机或通信系统间互联的标准体系。TCP/IP四层模型:TCP/IP参考模型…...

接口自动化测试-python-笔记
概念接口测试:是对系统或组件之间的接口进行测试,主要是校验数据的交换、传递和控制管理过程,以及相互逻辑依赖关系。自动化测试:是把以人为驱动的测试行为转化为机器执行的一种过程。实现方式使用接口测试工具来实现,…...

动画目标匹配
1、动画目标匹配动画目标匹配主要指的是:当游戏中角色要以某种动作移动,该动作播放完毕后,人物的手或者脚必须落在某一个地方比如:角色需要跳过踏脚石或者跳跃并抓住房梁那么这时我们就需要动作目标匹配来达到想要的效果2、如何实…...

iserver配置https加密通信
1.升级iserver为https访问:iserver是部署在tomcat中,所以只要配置tomcat的相关配置就可以: (1)https访问需要用到证书,因此需要准备相关证书,证书的格式有多种,比如后缀为.crt格式的…...

SpringBoot可用的无数据库后台授权解决方案
1、概述此方案适用于无数据库环境的后台管理程序配置访问授权规则。通过纯文件的配置方式,可以对请求的url以及页面中的元素配置独立授权。2、配置方式配置方案基于ini文件格式,除了url、元素授权部分是动态增加,其他配置项是固定结构的&…...

application.yml配置文件大全汇总
application.yml文件的配置文件: spring:datasource:username: rootpassword: 990526url: jdbc:mysql://localhost:3306/springboot?serverTimezoneUTC&useUnicodetrue&characterEncodingUTF-8driver-class-name: com.mysql.cj.jdbc.Drivertype: com.alib…...

application.properties常用配置
application.properties #默认的四要素 key固定 spring.datasource.urljdbc:oracle:thin:localhost:1521:orcl spring.datasource.driver-class-nameoracle.jdbc.OracleDriver spring.datasource.usernamescott spring.datasource.passwordtiger#设置日志级别 #lv: TRACE, DEB…...

轻装上阵Html5游戏开发,JEESJS(四)
下面我将通过完善Demo的形式,来演示下用法。首先在html中导入需要的库,我定义了一个index.html用来作为演示的入口: index.html: <!DOCTYPE html> <html> <head> <title></title> <meta charset"utf-…...
java配置ssl证书实现https请求,一级域名和二级域名配置https,小程序https后台的配置
上一节给大家讲了服务器的部署,正常的http请求都可以实现了,但是我们做小程序开发时需要用到https,所以这一节要教大家如何让自己的后台服务器实现https请求。这节是以java部署服务器并配置https为例,别的语言可以把这篇文章作为参…...

大数字的单位转换方法
大数字的单位转换方法数据准备大数字转字符串字符串转大数字说明近期做了个游戏,用到了大数字的单位计算和转换,这里作为参考纪录一下。js写的,其他的语言应该也差不了太多。数据准备 显示的通用格式为: 999.999aa,小…...

linux 查看硬盘还是固态
lsblk -d -o name,rota 返回 0 为ssd 返回1 为硬盘...

固态硬盘linux提升,分析如何提升Linux的固态硬盘使用率?
分析如何提升Linux的固态硬盘使用率?固态硬盘(SSD)不是普通的硬盘。文件在固态硬盘中的处理方式与地普通硬盘中的方式完全不同,如果安装Linux不同版本时没有把这些差异考虑进去,就很难充分发挥固态硬盘的优势,而且很可能在使用一段时间后造成…...

linux固态硬盘交换分区大小,分析如何提升Linux的固态硬盘使用率?
固态硬盘(SSD)不是普通的硬盘。文件在固态硬盘中的处理方式与地普通硬盘中的方式完全不同,如果安装Linux不同版本时没有把这些差异考虑进去,就很难充分发挥固态硬盘的优势,而且很可能在使用一段时间后造成严重的性能下降。修改默认的固态硬盘…...

linux固态硬盘和机械盘,判断linux磁盘是固态硬盘还是机械硬盘的方法
判断linux磁盘是固态硬盘还是机械硬盘的三种方法: 方法一 判断cat /sys/block//queue/rotational的返回值(其中为你的硬盘设备名称,例如sda等等),如果返回1 则表示磁盘可旋转,那么就是HDD了; 如果返回0,…...

收益率的分解 无风险利率
近似形式: 名义无风险利率 实际无风险利率 预期的通货膨胀 nominal risk-free rate real risk-free rate expected inflation rate 精确形式: (1 nominal risk-free rate) (1 real risk-free rate) x (1 expected inflation rate)...

使用Tushare任取场内或者场外基金历史超过2年的200个公募基金,取得过去两年的基金净值序列,通过计算夏普比率(可任意设定无风险利率),来找到19年表现最好的50个基金。
付费专栏:需要查看的请订购 使用Tushare任取场内或者场外基金历史超过2年的200个公募基金,取得过去两年的基金净值序列,通过计算夏普比率(可任意设定无风险利率),来找到19年表现最好的50个基金。通过计算平均收益率,找到2020年表现最好的50个基金。看看有多少基金在其夏…...

SAS在金融中的应用三
第一题: 导入数据上证综指,试计算2020期间各月上证综指的单期百分比收益率,算术平均收益率 和几何平均收益率,以及财富指数。(要求:采用retain语句和transpose语句两种形式) /*导入数据上证综…...

金融工程学(九):期权回报与价格分析
文章目录期权回报与价格分析期权的回报与盈亏分布期权价格的特性内在价值与时间价值内在价值实值期权、平价期权与虚值期权期权的时间价值期权价格的影响因素假设期权价格的上下限期权价格的上限期权价格的下限提前执行美式期权的合理性提前执行无收益资产美式看涨期权提前执行…...

【从零开始玩量化12】无风险利率
上文中,我们详细的介绍了夏普比率,其公式中的一个重要变量,就是无风险利率,这个概念好理解,但是实操过程中如何取值,很多平台说是4%,真的对吗,本文阐述一下。 无风险利率 就是字面…...

Huggett (1993):非完全保险经济中异质性行为者的无风险利率,及其Matlab代码
本文将详细解释1993年Huggett的经典论文:不完全保险经济中异质性行为者的无风险利率,并提供Matlab代码 Mark Huggett(1993). “The Risk-Free Rate in Heterogeneous-Agent Incomplete-Insurance Economies.” Journal of Economic Dynamics and Contro…...
浅谈Android中的Fragment
什么是Fragment? Fragment是一种可以嵌入在activity当中的一个模块化和可重复利用的组件,它可以定义自己的布局和监听事件,以及通过使用它自己的生命周期回调方法来定义的它自己的行为。Fragment的设计理念:允许你把Activity中的布局文件分散到几个不同…...

ES6入门-----解构赋值
ES6入门-----解构赋值 解构赋值是对赋值运算符的扩展。 他是一种针对数组或者对象进行模式匹配,然后对其中的变量进行赋值。 一:数组的解构赋值 基本 const arr [1, 2, 3, 4]; let [a, b, c, d] arr;默认赋值:当解构模式有匹配结果&…...

2021.5.19笔记 Collection集合
概述 数组中存储的是同一类型的元素,可以存储基本数据类型值和对象;集合存储的都是对象,而且对象的类型可以不一致。 集合的框架: Collection的一些方法 public class CollectionClass {public static void main(String[] args) {Collectio…...

ES6入门之------let 和 const
ES6入门之------let 和 const 一. let 1. let只作用在当前块级作用域内 我们首先来看一下什么是块级作用域: 1.通俗来说就是一对花括号中的区域{…} 2.块级作用域可以嵌套 { .... }if(){ .... }for(){ ..... } ...还有很多这里不就不举例了,我们特别来…...

WebServer Project-02-XML解析
XML:Extensible Markup Language,可扩展标记语言,左卫门数据的一种存储格式或用于存储软件的参数,程序解析此配置文件,就可以达到不修改代码就能更改程序的目的。 <?xml version"1.0" encoding"UTF…...
Android持久化存储——(包含操作SQLite数据库)
《第一行代码》读书手札 你可能会遇到的问题:解决File Explorer 中无显示问题 Android中,持久化存储,常见的一共有三种方法实现 (一.)利用文件存储 文件存储是Android存储中,最基本的一种存储方式。就是利…...
Android中使用LitePal操控SQLite数据库
《第一行代码》读书手札 (一)什么是LitePal数据库 LitePal数据库是安卓的一个开源库,我们在以后的开发中,将会遇到许许多多的开源库,感谢开源社 区;因为开源社区的存在,一些我们需要的功能&am…...
(二)Spring中的ioc
目录 Spring的ioc操作ioc底层使用的技术ioc底层原理ioc入门案例bean管理(xml方式)IOC和DI的区别Spring整合WEB的原理Spring 整合的具体操作 Spring的ioc操作 把对象的创建交给Spring管理ioc操作分为两种 配置文件方式注解方式 ioc底层使用的技术 xml配…...

吉软-人文精英班-第6次作业
<!DOCTYPE html> <html lang"en"> <head> <meta charset"utf-8"> <style type"text/css"> /* 先定义无边框编剧 */ *{ margin:0; padding:0; …...

自动驾驶、无人驾驶、车联网笔记分享
持续更新整理一些自动驾驶领域、无人驾驶领域、车联网领域的优秀资源笔记,分享给有需要的人。 车路协同、车联网、智慧交通、智能网联车、自动驾驶、无人驾驶、高精度地图资料汇总与整理 车路协同优质资料整理地址: 语雀:车路协同、自动驾驶…...

Python学习笔记之【函数式编程】
函数式编程的一个特点就是,允许把函数本身作为参数传入另一个函数,还允许返回一个函数。 高阶函数 变量可以指向函数 >>> f abs >>> f(-10) 10 函数名也是变量 >>> abs 10 >>> abs(-10) Traceback (most rec…...

Android Glide4缓存动态url图片
Glide是目前最流行开源图片处理框架之一,拥有强大的图片加载,缓存功能。在开发中,使用起来真是爽歪歪。 Glide GitHub地址:https://github.com/bumptech/glide Glide和Picasso的缓存策略都十分出色,他们都是基于图片的…...

嵌入式C语言中Volatile的陷阱
uchar * volatile reg;这行代码里volatile修饰的是reg这个变量。所以这里实际上是定义了一个uchar类型的指针,并且这个指针变量本身是volatile 的。但是指针所指的内容并不是volatile的!在实际使用的时候,编译器对代码中指针变量reg本身的操作…...