简述
Python是一种计算机程序设计语言(解释型脚本语言,无需编译)。是一种面向对象的动态类型语言。Python在设计上坚持了清晰划一的风格。设计者开发时总的指导思想是,对于一个特定的问题,只要有一种最好的方法来解决就好了。Python的作者有意的设计限制性很强的语法,使得不好的编程习惯(例如if语句的下一行不向右缩进)都不能通过编译。其中很重要的一项就是Python的缩进规则。一个和其他大多数语言(如C)的区别就是,一个模块的界限,完全是由每行的首字符在这一行的位置来决定的(而C语言是用一对花括号{}来明确的定出模块的边界的,与字符的位置毫无关系)。
基本语法
- Python 中的标识符是区分大小写的。
- 以单下划线开头 _foo 的代表不能直接访问的类属性,需通过类提供的接口进行访问,不能用 from xxx import * 而导入。
- 以双下划线开头的 __foo 代表类的私有成员,以双下划线开头和结尾的 foo 代表 Python 里特殊方法专用的标识,如 init() 代表类的构造函数。
- print(abc)输出 ;num=input(“请输入你的学号:”) 输入
- 转义符:\ +转义符号
\n :换行
\t :制表符 (以4位分割,4位补齐)
\r :覆盖 (后面出现的内容覆盖之前的内容)
\b :删除符(删除前面的一个字符)
\\ :代表一个\
r/R: 使转义字符不起作用 ;print(r"good\n moring")
- python变量
1:变量名只能是字母,数字和下火线的任意组合
2:变量名的第一个字母不能是数字
3:变量名区分大小写
4:特殊关键字不能作为变量名
1:变量赋值 =
2:多个变量赋值 a,b,c = 100,200,300
- 常量(大写:约定俗成,非强制)
BI = 3.1415926 - 数据类型
Number(数字),string(字符串),List(列表),Tuple(元组),Sets(集合),Dictionary(字典)
1:不可变 基本数据类型
Number:包含int ,float,bool,complex(复数)。
String :使用单引号,使用\转义。
Tuple 元组:与列表比较,元祖的元素不能修改 格式:(,,,,,)空元祖:tul=(),元组中只包含一个元素时,需要在元素后面添加逗号,否则括号会被当作运算符使用
2:可变数据类型
List 列表:元素类型可以不同。 格式:[,,,,,]
Set 集合:不可重复,定义空集合使用set() 格式:{,,,,}
Dictionnary字典 :格式:{key:value,key:value}
- type(Object) :判断是哪一种数据类型
- str(param):类型转为String
- len(param):获取字符串的长度 注意:不同的字符所占的字节数不同,数字、英文字母、小数点、下划线以及空格,各占一个字节,而一个汉字可能占 2~4 个字节,具体占多少个,取决于采用的编码方式。例如,汉字在 GBK/GB2312 编码中占用 2 个字节,而在 UTF-8 编码中一般占用 3 个字节</font>
- 字符串索引:String类型
[开始:结束] 取左不取右(若从起始位置开始,0可省略),如果倒着取数[-3,-1]
[开始:结尾:步长]
format()
{数据格式化参数个数的下标(可省略):.2f} :保留两位小数
{数据格式化参数个数的下标(可省略):.2%} :保留两位小数百分号
find(字符串) 第一次出现的下标,如果找不到,-1
find(字符串,开始下标,结束下标)
count(字符串):计数
count(字符串,开始下标,结束下标)
replace(待替换,替换为)
replace(待替换,替换为,替换次数)
upper():全部转换为大写
lower():全部转换为小写
split(指定字符):指定分割点对字符串进行分割
split(指定字符,分割次数):指定分割点对字符串进行分割
strip():去除字符串首位的空格
strip(去除首尾字符):去除字符串首位的特定字符
列表:
列表是写在[]之间,用逗号分隔开的元素列表,列表中的元素的类型可以不相同,支持数字,字符串和列表(嵌套),列表中的元素是可以改变的
lista=[1,2,3,4,'number',[9,8,7]]
listb=[5,6]
lista[0]: 1
lista[5][0]: 9
len(lista): 长度
lista + listb :两个列表合成一个
lista*3 :lista的数据copy两份原来的数据,放到当前列表
lista[0:3]: 列表切片取值。 1,2,3
list[::-1]:列表倒序输出
del关键字:删除
append方法(元素):向列表末尾添加元素(生成一个新列表)
insert(a,b) :a 插入的位置。b 插入的对象
clear() :将列表清空
remove() :用于从列表中移除元素,如果有多个只会移除第一个
pop():用于移除列表中指定位置的元素,并返回要移除的元素,默认情况下,移除列表的最后一个元素
index(a,b,c):用于返回匹配元素的索引 a:查找的对象 b:起始范围 c:结束范围
reverse():函数用户将列表反向排序
extend():函数用于在一个列表的末尾添加另外一个列表,与append函数相比,extend()函数可以一次性添加多个元素(推荐使用)
copy():函数用于创建列表的副本,赋值还是同一个变量,相当于两个对象同时操作一段数据,可以理解为引用
sort():将列表进行排序:常见ASCII码的大小规则 :0~9<A~Z<a~z
sort(reverse=True):降序
count():统计在列表中出现的次数
元组
与列表类似,但是元素不能修改(如果里面某些元素是列表,那么列表元素可以修改),元素写在小括号()里,元素之间用逗号隔开,组中的元素类型也可以不同
拼接:直接使用 +
注意事项和乘号的使用:
1:小括号也可省略
2:如果元组只有一个元素,后面必须跟一个逗号 ,
3:乘号:和列表类似
集合
集合是无序的,里面的元素是唯一的,集合一般用于元组和或者列表中的元素去重。
创建集合:
1:变量名=set(元素) 字符串/列表/元组/字典
2:变量名={元素,元素,,,,} 元组/字符串/数字
集合添加元素:
add(). 往集合中添加元素 数字/字符串/元组
update(). 可以将集合合并
集合中删除元素:
remove() :存在直接删除,不存在则报错
pop(): 随机删除集合中的元素,如果集合为空,则报错
discard():存在删除,不存在不做任何操作
集合的交集和并集:
1:交集 使用“&”符号连接多个集合,得到相同的元素
2:并集 使用“|”符号连接多个集合,得到集合中的全部数据
字典
字典是一种映射类型,它的元素是键值对,字典的关键字必须是不可变类型,且不能重复。创建空字典使用{}
dic={
"年龄":18
"姓名":”yeamin”
}
增加:dic["班级"]=“一班”
删除:del dic["班级"]
修改:dic["班级"]=‘二班’
查找:dic["班级"]
字典的操作方法:
1:get函数:用于从字典中获取指定键的值。在get函数中可以设置默认值
2:keys函数:将以列表的形式返回字典中的所有键。
3:items函数:将以列表的形式返回字典中的所有键值对。
4:values函数:将以列表的形式返回字典中的所有值
5:clear函数:用于将字典清空。
6:copy函数:用于创建字典的副本,修改原字典对象,不会影响其副本的值。
7:fromkeys:用于创建一个新的字典,第一个参数是一个序列(列表/元祖/集合),可以用作字典的键,第二个参数作为每个键的值。
8:pop函数:用于从字典中移除指定键,并返回该键对应的值
9:popitem函数:用于从字典中删除最后一项,并以元祖的形式返回该项对应的健和值。
10:setdefault函数:设置键的默认值。已存在则忽略。
11:update函数:用于将字典2的值更新到字典1。若字典2的键在字典1中已经存在,则对字典1进行修改。
12:成员检测和标识号检测:使用“in”和“not in” 运算符来判断某个对象是是否为序列的成员。
14:判断某两个对象是否相同,则使用is 和 not is运算符。
- 运算符
- 加:+
- 减:-
- 乘:*
- 除:/
- 幂:**
- 取模(余数):%
- 向下取整://
- 等于:==
- 大于:>
- 小于:<
- 大于等于:>=
- 小于等于:<=
- 不等于:!=
- and->与
- or->或
- not->非
- python的空值:None
a = 0011 1100
b = 0000 1101
-----------------
a&b = 0000 1100:与——同位置如果相同则为1,否则为0
a|b = 0011 1101:或——同位置有一个为1时,即为1
a^b = 0011 0001:异或——当两对应的二进位相异时,结果为1
~a = 1100 0011:非——对数据的每个二进制位取反,即把1变为0,把0变为1。~x 类似于 -x-1
<<:左移动运算符:运算数的各二进位全部左移若干位,由"<<"右边的数指定移动的位数,高位丢弃,低位补0
>>:右移动运算符:把">>"左边的运算数的各二进位全部右移若干位,">>"右边的数指定移动的位数
- 传统的格式化输出方法:%
%s:为字符串占位,任意类型都可以
%d:为数值类型占位
%f:为浮点数占位
s1="%s---%d---%f"%('a',10,99.9)
f的表达式(f大小写都可以)(F 3.6版本以上支持)
name='yeamin'
age=5
s=f'我的名字是{name},我的年龄是{age}'
标题控制语句
import keyword
# 可显示所有关键字
print(keyword.kwlist)
- if 语句:当条件成立时运行语句块。经常与else, elif(相当于else if) 配合使用。
- for语句:遍历列表、字符串、字典、集合等迭代器,依次处理迭代器中的每个元素。
- while语句:当条件为真时,循环运行语句块。
- try语句:与except,finally配合使用处理在程序运行中出现的异常情况。
- class语句:用于定义类型。
- def语句:用于定义函数和类型的方法。
- pass语句:表示此行为空,不运行任何操作。
- assert语句:用于程序调试阶段时测试运行条件是否满足。
- with语句:Python2.6以后定义的语法,在一个场景中运行语句块。比如,运行语句块前加密,然后在语句块运行退出后解密。
- yield语句:在迭代器函数内使用,用于返回一个元素。自从Python 2.5版本以后。这个语句变成一个运算符。
- raise语句:制造一个错误。
- import语句:导入一个模块或包。
- from import语句:从包导入模块或从模块导入某个对象。
- import as语句:将导入的对象赋值给一个变量。
- in语句:判断一个对象是否在一个字符串/列表/元组里。