python开发

一、变量

  1. 变量

  • 指在程序执行过程中,可变的量;
  • 定义一个变量,就会伴随有3个特征,分别是内存ID、数据类型和变量值。
  • 其他语言运行完之前,一定要手动把程序的内存空间释放掉。但python解释器是自带内存回收机制的,一旦python程序运行完后,会自动释放内存空间。
age=10
print(id(age),type(age),age)
View Code

 

  1. 常量

  • 指在程序执行过程中,不可变的量;
  • 一般都用大写字母定义常量。
AGE=10
print(AGE)
View Code
 
  3. 变量的命名方式

 
  • 驼峰体
AgeOfOldboy=72
View Code
  • 下划线
age_of_oldboy=72
View Code
 
二、与程序交互

  
    古时候,我们去银行取钱,需要有一个银行业务员等着我们把自己的账号密码输入给他,然后他去进行验证等成功后,我们再将取款金额输入、告诉他。
    骄傲的现代人,会为客户提供一台ATM机(就是一台计算机),让ATM机跟用户交互,从而取代人力。然而机器是死的,我们必须为其编写程序来运行,这就要求我们的编程语言中能够有一种能与用户交互,接收用户输入数据的机制。
  1. python3

  • python3默认支持UTF-8中文编码。python2需要添加# -*- coding:utf-8 -*-在代码头部。
  • python3中input,不管输入什么类型的值都被存成str(字符串)类型
name=input('please enter the username: ')
print(id(name),type(name),name)
View Code

 

  1. python2

  • python2中raw_input跟python3中input一样;
name=raw_input('please enter the username: ')
print(id(name),type(name),name)
View Code

 

  • python2中input,必须输入值,这个值是什么类型就会被存成什么类型。
name=input('please enter the username: ')
print(id(name),type(name),name)
View Code
 
三、数据类型

  1. int整型

  • 一般用于定义年龄、身份证号、qq号、等级等
age=18
id=130530198805240011
qq=379048558
level=99
View Code

 

  1. float浮点型

  • 一般用于定义身高、体重、薪资等
height=1.81
height=float(1.81)
 
View Code

 

  1. str字符串型

  • 一般用于定义人的名字、性别、状态等;
  • 一般字符串放在单引号、双引号、三引号中。
name='egon'
sex='female'
age=18
 
View Code

 

  • 字符串拼接用"+"
name='egon'
sex='female'
age=18
print(name+sex+str(age))
注:这里的age变量值为18,是int整型不能作字符串拼接,需使用str(age)来转换成字符串类型。
View Code

 

  • 字符串拼接用"*"
name='egon'
print(name*10)
View Code

 

  1. bool布尔值型

  • 只有True和False两个值;
  • 多用于作判断。
age=73
AGE=18
print(age < AGE)
print(age > AGE)
View Code

 

  1. 各类型相互转换

  • 整型——>浮点型
a=18
print(float(a))
View Code

 

  • 浮点型——>整型
a=1.81
print(int(a))
View Code

 

  • 浮点型——>字符串型
a=1.81
print(str(a))
View Code

 

  • 整型——>字符串型
a=18
print(str(a))
View Code

 

四、数组类型

  1. 列表[]

  • python中的列表,定义在[]内,其内元素之间使用"逗号"分隔;
info=['egon','alex',18]
print(info[2])
View Code

 

  • 元素可以是任意一种数据类型、任意一种数组类型;
  • 字符元素需要引号引起来,整型、浮点型、列表等不需要引号。
info=[13,18.1,'alex',['egon','tony']]
print(info[3][0])
View Code

 

  1. 字典{}

  • python中的字典,也叫关联数组,定义在{}内,其内元素使用项目名:项目内容格式表示,元素之间使用"逗号"分隔;
info={'name':'egon','sex':'male',3:18}
print(info[3])
View Code

 

  • 项目内容可以是任意一种数据类型、任意一种数组类型;
  • 项目内容中的字符串型需要引号引起来,整型、浮点型、列表等不需要引号。
info={'姓名':'爱根','性别':'','肌肉':['','']}
print(info['肌肉'][1])
 
info={'姓名':'爱根','性别':'','肌肉':123}
print(info['肌肉'])
 
info={'姓名':'爱根','性别':'','肌肉':18.1}
print(info['肌肉'])
 
info={'姓名':'爱根','性别':'','肌肉':''}
print(info['肌肉'][1])
View Code

 

五、格式化输出

  • my name is xxx, my age is xxx
  • 需要使用占位符%s
name=input('user_name>>: ')
age=input('user_age>>: ')
print('my name is %s, my age is %s' %(name,age))
View Code

 

六、运算符

  1. 算术运算符

  • + - * /
 
print(5+5) #5加5等于10
print(5-5) #5减5等于0
print(5*5) #5乘5等于25
print(5/2) #5除以2等于2.5
View Code

 

  • 求商整数部分// 求商余数部分% 幂**
print(5//2) #5除以2商等于2余1,只取商2
print(5%2) #5除以2商等于2余1,只取余数1
print(3**2) #3的2次幂是3乘3等于9
View Code

 

  1. 比较运算符

  • > < >= <= == !=
print(30 > 20)
print(30 < 20)
print(30 >= 30)
print(30 <= 30)
print(30 == 30)
print(30 != 40)
View Code

 

  1. 逻辑运算符

  • 逻辑与and 逻辑或or 逻辑非not 按位与& 按位或|
  • 逻辑与and,必须满所有条件,结果才为True;
  • 逻辑或or,只需满足一个条件,结果就为True;
  • 逻辑非not,结果取反。
name='egon'
age=18
print(age > 15 and name == 'egon')
print(age > 15 or name != 'egon')
print(not age > 15)
View Code

 

【论文复现】一种基于价格弹性矩阵的居民峰谷分时电价激励策略【需求响应】(Matlab代码实现)内容概要:本文介绍了一种基于价格弹性矩阵的居民峰谷分时电价激励策略,旨在通过需求响应机制优化电力系统的负荷分布。该研究利用Matlab进行代码实现,构建了居民用电行为与电价变动之间的价格弹性模型,通过分析不同时间段电价调整对用户用电习惯的影响,设计合理的峰谷电价方案,引导用户错峰用电,从而实现电网负荷的削峰填谷,提升电力系统运行效率与稳定性。文中详细阐述了价格弹性矩阵的构建方法、优化目标函数的设计以及求解算法的实现过程,并通过仿真验证了所提策略的有效性。; 适合人群:具备一定电力系统基础知识和Matlab编程能力,从事需求响应、电价机制研究或智能电网优化等相关领域的科研人员及研究生。; 使用场景及目标:①研究居民用电行为对电价变化的响应特性;②设计并仿真基于价格弹性矩阵的峰谷分时电价激励策略;③实现需求响应下的电力负荷优化调度;④为电力公司制定科学合理的电价政策提供理论支持和技术工具。; 阅读建议:建议读者结合提供的Matlab代码进行实践操作,深入理解价格弹性建模与优化求解过程,同时可参考文中方法拓展至其他需求响应场景,如工业用户、商业楼宇等,进一步提升研究的广度与深度。
针对TC275微控制器平台,基于AUTOSAR标准的引导加载程序实现方案 本方案详细阐述了一种专为英飞凌TC275系列微控制器设计的引导加载系统。该系统严格遵循汽车开放系统架构(AUTOSAR)规范进行开发,旨在实现可靠的应用程序刷写与启动管理功能。 核心设计严格遵循AUTOSAR分层软件架构。基础软件模块(BSW)的配置与管理完全符合标准要求,确保了与不同AUTOSAR兼容工具链及软件组件的无缝集成。引导加载程序本身作为独立的软件实体,实现了与上层应用软件的完全解耦,其功能涵盖启动阶段的硬件初始化、完整性校验、程序跳转逻辑以及通过指定通信接口(如CAN或以太网)接收和验证新软件数据包。 在具体实现层面,工程代码重点处理了TC275芯片特有的多核架构与内存映射机制。代码包含了对所有必要外设驱动(如Flash存储器驱动、通信控制器驱动)的初始化与抽象层封装,并设计了严谨的故障安全机制与回滚策略,以确保在软件更新过程中出现意外中断时,系统能够恢复到已知的稳定状态。整个引导流程的设计充分考虑了时序确定性、资源占用优化以及功能安全相关需求,为汽车电子控制单元的固件维护与升级提供了符合行业标准的底层支持。 资源来源于网络分享,仅用于学习交流使用,请勿用于商业,如有侵权请联系我删除!
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值