1.变量
python中的变量声明和C++中的不一样
python中生命变量可以不用显示变化 并且变量类型在执行过程中是动态的
同时python也是可以定义类型的 但是和C++不一样
python用的是 变量名:类型
python中有type函数可以查看变量类型
Python 中的变量的类型,不需要在定义变量的时候显式声明.
而只是依靠初始化语句,根据初始化的值的类型来进行确定的.
在 Python, int 能够表示的数据范围,是 "无穷" 的.
Python 的 int 是可以根据要表示的数据的大小,自动扩容~
因此 Python 这里就没有 long 这样的类型了
像 byte, short 这些类型在 Python 中也不存在
Python 中的 float
就是双精度浮点数.
等同于 C++/Java 里的 double
把一个二进制位,称为一个 bit
8 个 bit 放在一起,就称为是一个 字节
double 是八个字节的,也叫做 "双精度浮点数"

2.字符串类型
python中的字符串类型是str 也就是string的缩写
python中没有字符类型
因此 '' " , ' ' , """ """等三种方式可以表达字符串
python中计算变量大小的函数是len函数 相当于C++的sizeof函数
python可以直接比较字符串 不需要用strcmp 但是比较规则和strcmp是一样的
3.布尔值
python的布尔值和C++的大体相似
无非旧是大小写的区别
python的布尔值是True和False
C++的是true和false
4.整数相除
python中整数除整数 结果可能是小数 不会像C++一样触发截断 而是直接算出小数
5.乘方运算符
python中的乘方运算符是** a的b次方可以表示成a**b

6.运算符
python中的除法是不会截断的
但是也有截断的除法叫做地板除法符号收是// 会向下取整
但是注意正数向下取整和负数还是使用的时候需要注意

python中的and 相当于 C++中的&&
python中的or 相当于 C++中的||
python中的not 相当于 C++中的!
7.多元赋值
python中是支持多元赋值的
多元赋值 "同时执行",而非按顺序逐个赋值
同时我们使用多元赋值就不需要使用中间变量了
8.++ --
Python 中不支持 ++ -- 这样的自增自减操作的!!
a++
++a
++a 之所以没有语法报错,是 Python 解释器把 + 当成了正号.
--a 也是不会报错,把 - 当成了负号。负负得正,最终的值仍然不变.
但是后置 ++ 和 后置 -- 都是语法上报错的!
9.;
在 Python 中,一个语句写完了之后,可以加上分号,也可以不加.
通常情况下都是不加的。如果加了,也不算错!!
如果把多个语句写到同一行了,这个时候语句之间,务必要加上分号的. (并不推荐)
比如
python
a = 10; print(a)
10.if语句
cpp
# 定义一个分数变量(可自行修改测试)
score = 85
# if-elif-else 判断逻辑
if score >= 90:
# 满足score>=90时执行
print("成绩等级:优秀")
elif score >= 80:
# 不满足上一个条件,但满足score>=80时执行
print("成绩等级:良好")
elif score >= 60:
# 不满足前两个条件,但满足score>=60时执行
print("成绩等级:及格")
else:
# 以上条件都不满足时执行
print("成绩等级:不及格")
大体上和C++是一样的 无非区别是python用的不是大括号
而是:和缩进表示
对于多条件分支,不是写作 else if, 而是 elif (合体了).

根据缩进不同 前一个if语句中如果满足条件会执行 print(a)
print(a+1)这两段语句
但是后一个if语句如果满足条件则会执行 print(a)
但是不管后一个if语句的条件满不满足 都会执行print(a+1)
example

11.pass
pass表示空语句 在python中不能直接空着一行
但是可以用空语句pass 表示什么都不做
12.注释
python的注释和C++的不同
单行注释是#
多行注释是""""

13.while
python支持while类型但是不支持do while类型的
格式和if类似
python
while 条件:
循环体
条件为真,则执行循环体代码。
条件为假,则结束循环。
分享
14.for
Python 的 for 和其他语言不同,没有 "初始化语句""循环条件判定语句""循环变量更新语句",而是更加简单。
所谓的 "可迭代对象",指的是 "内部包含多个元素,能一个一个把元素取出来的特殊变量"。
range 是一个内建函数。
起到的效果就是得到一个 "可迭代对象"。
这个可迭代对象中就包含了一系列的整数。
range(beg, end) => [beg, end),是前闭后开区间。
range 还提供了第三个参数表示 "步长",默认的步长值是 1
步长为负数表示反向遍历,也就是从起始值向更小的数值方向迭代,同时range的 "前闭后开" 规则会适配反向逻辑。

15.函数
C++/Java 里面,不光要求形参和实参的个数要匹配,
还要求类型也要匹配~
但是在 Python 里,只是要求个数,对类型没有要求。(动态类型)
也不是说,随便传入啥类型都行,
只要保证传入的参数类型,在函数体里面能够支持对应的运算操作,即可!!
此外python函数可以有多个返回值
可以用前面学的多元赋值进行接受
如果只接受一个 也可以 要用到_符号
global关键字
没有 global,此时就会把 x = 20 当做是在函数内部创建了一个局部变量 x,而实际上是要修改全局变量 x~
为了让函数里面知道 x 是个全局变量~,就使用 global 关键字先声明一下
if, else, while, for 这些关键字也会引入 "代码块",但是这些代码块不会对变量的作用域产生影响!!
在上述语句代码块内部定义的变量,可以在外面被访问!!

此外python传参的时候也可以指定传参和设置默认值
但是
形参的默认值
带有默认值的形参 就可以在调用函数的时候,不必传参
要求带有默认值的形参,得在形参列表的后面
而不能在前面 / 中间!
多个带有默认参数的形参,这些都得放在后面!!
