1.基本语法

第一部分

  • 在python中严格区分大小写
  • python中每一行就是一条语句,每条语句以换行结束
  • python中每一行语句不要过长(规范中建议每行不要超过80个字符)
  • 一条语句可以分开写,多行编写时语句后面以\结尾
  • python是缩进严格的语言,所以在python中不要随便写缩进
  • python中使用#表示注释,一般习惯在#后面加上一个空格

第二部分 变量

  • python中使用变量时不需要声明,直接为变量赋值即可
    例:a=10
  • 不能使用没有进行过赋值的变量
  • python是一个动态类型的语言,可以为变量赋任意类型的值,也可以任意修改变量的值
    例:a='hello' print(a)

第三部分 标识符

  • 在python中所有可以自主命名的内容都属于标识符,比如变量名,函数名,类名等
  • 标识符要遵循标识符的命名规范:
1.  标识符中可以含有字母、数字、下划线_、但是不能使用数字开头
  1. 标识符不能是python中的关键字和保留字
  2. 命名规范 在python中注意遵循以下两种命名规范:
  • 下划线命名法:所有字母小写,单词之间用_分隔 max_length min_length xxx_yyy_zzz
  • 帕斯卡命名法(大驼峰命名法):首字母大写,每个单词开头字母大写,其余字母小写 MaxLength MinLength HelloWorld XxxYyyZzz
    例:_b1 = 20 MaxLength = 30

第四部分 数据类型

整数类型

  • 在python中数值分为3种:整数、浮点数和复数
  • python中所有的整数都是int类型,并且大小没有限制
  • 十进制的数字不能以0开头,二进制以0b开头,八进制以0o开头,十六进制以0x开头

字符串类型

  • python中字符串必须使用引号引起来可以是单引号,可以是双引号
  • 相同的引号之间不能嵌套
  • 单引号和双引号不能跨行使用

转义字符

可以使用\ 作为转义字符

  • ' 表示'
  • " 表示"
  • \t 表示制表符
  • \n 表示换行符
  • \ 表示\
  • \uxxxx 表示Unicode编码

字符串运算

  1. 字符串之间也可以进行假发运算,如果两个字符串进行相加,则会自动将两个字符串拼接成一个
  2. 例:a = 'abc' + 'def' + '哈哈'
  3. 在创建字符串时,可以在字符串中指定占位符
  • %s 在字符串中表示任意字符
  • %f 浮点数占位符
  • %d 整数占位符
  1. * 在语言中表示乘法,如果将字符串和数字相乘,则解释器会将字符串重复指定的次数并返回
  2. 布尔值有两个:TrueFalse,分别相当于1和0;空值None用来表示不存在

类型检查

通过类型检查,可以检查值或变量的类型
type()用来检查值的类型,将检查的结果作为返回值返回,可以通过变量来接收函数的返回值
例:print(type(1.5))

类型转换

类型转换的四个函数 int() float() str() bool()

int()可以用来将其他的对象转换为整型
规则:

  • 布尔值:True -> 1 False -> 0
  • 浮点值:直接取整,省略小数点后面的内容
  • 字符串:合法的整数字符串,直接转为对相应的数字;如果不是一个合法的整数字符串,则报错
  • 对于其它不可转换为整型的对象,直接抛异常

float()类似,不同的是它会将对象转换为浮点数

bool()可以将对象转换为布尔值,任何对象都可以转换为布尔值
规则:对于所有标识空值的对象都会转换为False,其余的转换为True

第五部分 对象

python是一门面向对象的语言,对象就是内存中用来存储指定数据的一块区域,前面提到的数值等都是对象

对象的结构:每个对象都要保存的三种数据

id(标识):

  • id用来标识对象的唯一性,每一个对象都有唯一的id
  • 可以通过id()函数来查看对象的id
  • id是由解析器生成的,在CPython中,id就是对象的内存地址
  • 对象一旦创建,则它的id永远不能再改变

type(类型)

  • 类型用来标识当前对象所属的类型,如int
  • 类型就决定了对象有哪些功能
  • 通过type()函数来查看对象的类型
  • Python是一门强类型的语言,对象一旦创建类型便不能修改

value(值)

  • 值就是对象中存储的具体的数据
  • 对于有些对象来说,值是可以改变的
  • 对象分为两大类,可变对象 不可变对象

变量和对象:

  • 对象并没有直接存储到变量中,在python中变量更像是给对象起了一个别名
  • 变量中存储的不是对象的值,而是对象的id(内存地址)
  • 当我们使用变量时,实际上就是在通过对象的id在查找对象
  • 变量中保存的对象,只有在为变量重新赋值时才会改变
  • 变量和变量之间是相互独立的,修改一个变量不会影响另一个变量

第六部分 运算符

运算符可以对一个值或多个值进行各种运算或操作

分类:

  1. 算术运算符
  2. 赋值运算符
  3. 比较运算符(关系运算符)
  4. 逻辑运算符
  5. 条件运算符(三元运算符)

算数运算符

  • + :加法运算,字符串之间的加法会进行拼接操作
  • / :除法,结果返回一个浮点数
  • % :取模,求余数
  • // :整除,返回一个整型
  • ** :幂运算,求一个值的几次幂

关系运算符

关系运算符用来比较两个值之间的关系,总会返回一个布尔值

  • > < >= <= ==(比较的不是对象的id) !=(比较的不是对象的id)
  • is 比较两个对象是否是同一个对象,比较的是两个对象的id
  • is not 比较两个对象是否不是同一个对象,比较的是两个对象的id

逻辑运算符

分为not、and、or

当我们对非布尔值进行与或运算时,Python会将其当做布尔值,最终会返回原值

与运算的规则:与运算是找False的,如果第一个值是False,则不看第二个值;如果第一个值是False,则直接返回第一个值,否则返回第二个值

或运算规则:或运算是找True,如果第一个值是True,则不看第二个值;如果第一个值True,则直接返回第一个值,否则返回第二个值

条件运算符

语法:语句1 if 条件表达式 else 语句2
例:现在有ab两个变量,2个变量分别保存2个数值,通过条件运算符获取2个之中的最大值
print('a的值比较大 =', a) if a > b else print('b的值比较大 =', b)

运算符的优先级

和数学中一样,在python运算也有优先级,比如先乘除,后加减。在开发中遇到优先级不清楚的问题,可以通过小括号来改变运算顺序。