所有为0为空的数据转换为布尔型是False,其他都是True。
一、编译型语言和解释型语言: 1、编译性语言- 只须编译一次就可以把源代码编译成机器语言,后面的执行无须重新编译,直接使用之前的编译结果就可以;因此其执行的效率比较高;
- (2)编译性语言代表:C、C++;
- (3)程序执行效率比较高,但比较依赖编译器,因此跨平台性差一些;
-
(1)源代码不能直接翻译成机器语言,而是先翻译成中间代码,再由解释器对中间代码进行解释运行;
-
(2)程序不需要编译,程序在运行时才翻译成机器语言,每执行一次都要翻译一次;
-
(3)解释性语言代表:Python、JavaScript;
-
(4)运行效率一般相对比较低,依赖解释器,跨平台性好;
a =10 print(a) a = "wt" print(a) 变量重新赋值,可以赋值不同的类型。 结果: 10 wt2、同时定义多个变量
1)语法:变量名1 = 变量名2 = 变量名3 = …= 数据
x = y = z = 10 print(x,y,z)
2)同时定义多个变量赋不同的值:变量名1,变量名2,变量名3,… = 数据1,数据2,数据3,…
m ,n = 10,20
m ,n = 10,20 print(m) print(n) 结果: 10 20
练习:交换两个变量的值
a = int(input("请输入a 的值"))
b = int(input("请输入b 的值"))
a,b = b,a
print(a)
print(b)
运行结果:
请输入a 的值2
请输入b 的值6
6
2
三、变量保存数据的底层逻辑
问题1:为什么python定义变量不用说明类型
在c语言和Java中确定类型,也就明确申请的内存空间,而python中申请内存大小由需要存储的数据决定
问题2:为什么python给变量重新赋值时可以赋值不同类型的数据
问题3:为什么python可以直接保存9999**9999的计算结果
补充:内存单位
位(bit)
1字节(byte) = 8位
1kb = 1024字节
1Gb = 1024Mb
原理:定义变量会自动在内存空间申请内存,内存大小由数据大小决定,重新给变量赋值,会根据新的数据申请新的内存。
四、运算符-
数学运算 + ,—, *, /, //(整除:商向小取整),%(取余),**(幂运算)
print(-5//2) 结果:-3
取余的应用:判断两个数之间的整除关系,能整除余数为0;去掉高位数,保留低位数
注意:除法运算结果一定是浮点数 -
比较运算符:< ,> >= ,<= , == ,!=
- 逻辑算法:and ,or, not
运算规则:and, 条件1 and 条件2 。当条件都同时满足的时候结果为True
or 条件1 or 条件2 。,,,满足一个条件就是True ,两个条件都不满足,那就是False
闰年:
- 世纪闰年:能被400整除的年
- 普通闰年:能被4整除,但不能被100整除
year= int(input("请输入年份:"))
print("year是否是闰年:",(year%4== 0) or (year%400 == 0 and year%100 != 0))
-
赋值运算符: = , += , -= ,*= ,/= ,//= ,%=
语法:+= 变量 += 数据 。运算过程:先将变量中的值取出来与数据做加法运算然后在存入这个变量中。要求:变量要有初始值;变量里面保存的数据要和进行加法运算的数据类型一致
所有的赋值语句都没有结果,无法提供数据。
- 数学运算符 > 比较运算符 > 逻辑运算符 > 赋值运算符
- 有括号先算括号里面的()
默认情况,程序从上往下执行,每条语句都会执行并且只执行一次
-
if单分支结构:满足条件执行某个操作,条件不满足就不执行
if 条件语句:
代码段
执行过程:先判断吧条件是否成立,如果条件成立就执行代码段,否则就不执行
-
if双分支结构
if 条件语句:
代码段
else:
代码段
代码段
执行过程:先判断吧条件是否成立,如果条件成立就执行代码段,否则就不执行
-
if双分支结构
if 条件语句:
代码段
else:
代码段
-
if多分支结构



