一、前言
因个人习惯,在阅读和学习文字资料时,习惯摘写笔记,因此在这里留下自己的学习记录。笔记的内容偏摘抄为主,并非自己的原创内容。
内容基于:《简明 Python 教程》Swaroop, C. H. 著沈洁元 译
二、基本概念
常量:拥有字面上意义值的变量,不能被改变。
python中的数:
1、整数(int);
2、长整数(long,python3 已去除,统一为int);(比较大的整数)
3、浮点数(float);(E表示10的幂,例52.3E-4
表示52.3 * 10
-4)
4、复数(comprex);(例(-5+4j)
和(2.3-4.6j)
)
注意:整数没有长度限制(java中int限制为32位),超过长度自动变更为inf(无限大)
字符串:
1、用单引号指示字符串(‘字符串’);(保留空格和制表符)
2、用双引号指示字符串(“字符串”);(与单引号一致)
3、用三引号指示字符串('''字符串'''或"""字符串""");(指示多行的字符串,其中字符串可以自由使用单引号和双引号)
4、转义符;(意在字符串中使用引号,用反斜杠,例\',其中双引号指示的可以直接用单引号,字符串行末添加单独的反斜杠,表示下一行继续,字符串是连续的)
5、自然字符串;(指示需要特殊处理的字符串,用法是在引号前加r或R,例 r"字符串内容")
6、Uniconde字符串;(处理含有非英语的语言写的文本,用法是在引号前加u,例u"字符串内容")
7、占位符形式:利用{}在字符串中占据位置,再用format()函数中的字符串来代替{},利‘{} is my name’.format('xiaohua') 等价于 ‘xiaohua is my name’
特点:
1、字符串是不可变的;(一旦创造就不能改变)
2、两个字符串相邻,python会自动级连;(等同于Java中自动为你添加了+号连接两个字符串)
3、没有char类型的数据;
4、单引号和双引号指示的字符串没有任何区别;
5、有特别多的特殊字符时,最好使用自然字符串,避免过多的使用转义字符。(即前面带r)
变量:
既可以存储信息,也可以进行操作的变量。(计算机中存储信息的一部分内存,与常量的区别,需要有访问这些变量的方法)
可以处理不同的数据类型,基本类型有数、字符串。
使用变量时,只需给它赋一个值,不需要声明或定义数据类型。
三、标识符的命名
规则:
1、首字母必须为字母或者下划线;
2、其它部分可由字母、数字、下划线组成;
3、大小写敏感;
四、对象
对于python而言,程序中用到的任何东西都称之为对象,是广义的。
五、语句概念
默认:python假定每个物理行对应一个逻辑行。(推荐,代码易读)
逻辑行:python看见的单个语句。
物理行:就是实际上的一行代码。
物理行对应多个逻辑行:通过(;)来间隔逻辑行,代表一个逻辑行/语句的结束;
六、缩进
在python中,空白是重要的,而行首的空白称为缩进。
而逻辑行首的空白决定了缩进层次,用来决定语句的分组。(意味同一层次的语句必须有相同的缩进)
而非语句块或者最初层次的逻辑行不应有空白,否则会出错。
在使用缩进时,我们应有良好的风格,统一使用Tab或者两个、四个空格作为缩进,不然会导致错误。
七、字符编码
ASCII:美国的单字符编码(1个字节8位)
Unicode:整合了所有语言的编码(最少2个字节,16位),易浪费存储空间
UTF-8:把Unicode转化为可变长编码(变长范围1~6,根据字符大小)
字节流:用带b前缀的单引号或双引号表示。(字节流需要编码才能转为字符串,编码encode(),解码decode())
注意:为了让python文件按utf-8解码,通常文件开头加上如下两句:
第一句是告诉linux该文件是哪种类型文件,windows可忽略;
#!/usr/bin/env python3
# -*- coding: utf-8 -*-