本系列是适用于有一定的编程基础的同学快速上手python。
本文会结合C/C++,介绍python的特殊之处。
这个系列包括类型、循环、函数、字典与列表,文件操作。最后会以实操结尾。
常量和表达式,python与大多数语言中一致。
例如数字1? 2? 3? 4 这种不可修改的就是常量
而 1+2? ? ? 5*3就是表达式
与C/C++类似,Python也存在变量,变量的目的就是提前存储数据,方便后续适用
一个良好的变量名应该具有以下规则
变量类型
与C++不同,类型不需要显示的写
基本类型包括:int? float str bool
下面详细介绍一下:
整形
与C++不同,Python中的int数据的范围是没有上限
浮点型
与C++不同,python中没有double浮点数,python中的float就是双精度,等价于C++中的double
字符串
str取代char与string
字符串必须被双引号或者单引号或者三引号包括起来
这三种方法的任意一种都可以,当我们输入的字符串中本来就有双引号时,那么可以这样写
如果同时包含双引号,单引号就可以这样写
字符串操作(len? ?、+)
来源命题的真假 真是True 假是False
与C++的写法不同 首字母是大写的 ,用法基本一致。
int 默认4字节 可以动态增长
float 固定8字节
bool 一个字节
str是变长
在python中的类型是动态的!
绝大多数的编程语言都是静态。因此pyhon不需要对变量声明类型,直接拿来用即可。
可以在声明时候添加变量类型,比如在声明a时,添加上是int类型,这只是对编译器的一个建议,它依旧可以为float类型
在python中,给变量声明类型是锦上添花的做法,绝大多数,我们都不会去做。
一个好的程序员会有良好的注释
注释的方法
对于# 我们通常会在需要标注语句的上方注释? ,也有小部分在语句结束的右方。不在语句的左方
这是文档字符串俩种合理的做法
通过控制台的交互,可以实现用户的输入与输出
普通输出 print()函数,在控制台上显示
格式化输出? ?f'? ?{ }? '? ?{}表示要替换的字符
具体用法如下
input()? ?括号中,可以输入提示字符串
注意input的返回值是字符串类型 如果需要进行运算,就要对返回值类型转化
常见转换
+ 、-、 *、 /、%、**(乘幂)、//(地板除)
python中 /(除法)与C++不同? ?/得到的是带小数,而C++是向下取整的除法
// 是地板除法? 对于C++的/? 例如 7//3=2? ??
**幂方? ?例如 2**3? =8? ? 2**0.5=1.414213
%是求余??
其它操作均和C++一致 先幂后乘除 后加减 有括号先计算括号
<、<=、>、>=、==、!=这一系列的运算符与C++一致
不同的是 python支持? ?a<b<c这种写法
在python中,俩个字符串是可以直接通过 ==比较大小,类似C++的strcmp
浮点数不允许直接比较
正确比较方法是计算这俩个数的差值
and? ?or? ? not? ? 分别对应C++的? &&? ?||? ? !
逻辑与? 逻辑或 逻辑非
注意:
部分短路? ?如果and的左边第一个式子为假? ?右边的式子不会执行
? ? ? ? ? ? ? ? ?如果 or的第一个式子为真? ?第二个式子不会被执行
a<b and b<c? ?在python中可以表示为 a<b<c
a=b=c=10
a,b=100,200
这个语句的结果 a=100? ?b=200?
在实现俩个数的交换时,不需要借助临时变量就能实现交换
a=a+1是允许的,在python中a++是不允许? ?
++a是没有意义的,因为编译器会将++a理解为取俩次正号
同理减号类似