认识python
人生苦短,我用 Python —— Life is short, you need Python
要想学习python,我们必须先来了解一下python,如下:
1.python的起源
2.为什么要用python
3.python的特点
4.python的优缺点
了解这些之后,再确定自己是否可以坚持学习python
这些都是可以自己百度去查看的哈
python基础
1.标识符
1.在 Python 里,标识符由字母、数字、下划线组成。
2.所有标识符可以包括英文、数字以及下划线(_),但不能以数字开头。
3.Python 中的标识符是区分大小写的。
4.以下划线开头的标识符是有特殊意义的:
- 以单下划线开头 _xxx 的代表不能直接访问的类属性
- 以双下划线开头的 __xxx 代表类的私有成员
- 以双下划线开头和结尾的 _ xxx _ 代表 Python 里特殊方法专用的标识
2.注释
注释的作用:使用用自己熟悉的语言,在程序中对某些代码进行标注说明,增强程序的可读性
单行注释
以 # 开头,# 右边的所有东西都被当做说明文字,而不是真正要执行的程序,只起到辅助说明作用
示例代码如下:
# 这是第一个单行注释
print("hello python")
多行注释(块注释)
如果希望编写的 注释信息很多,一行无法显示,就可以使用多行注释
要在 Python 程序中使用多行注释,可以用 一对 连续的 三个 引号(单引号和双引号都可以)
示例代码如下:
"""
这是一个多行注释
在多行注释之间,可以写很多很多的内容……
"""
print("hello python")
什么时候需要使用注释?
- 注释不是越多越好,对于一目了然的代码,不需要添加注释
- 对于 复杂的操作,应该在操作开始前写上若干行注释
- 对于 不是一目了然的代码,应在其行尾添加注释(为了提高可读性,注释应该至少离开代码 2 个空格)
ps:绝不要描述代码,假设阅读代码的人比你更懂 Python,他只是不知道你的代码要做什么,在一些正规的开发团队,通常会有 代码审核 的惯例,就是一个团队中彼此阅读对方的代码
关于代码规范参考:http://zh-google-styleguide.readthedocs.io/en/latest/google-python-styleguide/python_style_rules/
3.运算符
- 算数运算符
是完成基本的算术运算使用的符号,用来处理四则运算
2.比较(关系)运算符
3.逻辑运算符
4. 赋值运算符
5.成员运算符
6.运算符的优先级
变量的基本使用
1.变量定义
在 Python 中,每个变量 在使用前都必须赋值,变量 赋值以后 该变量 才会被创建
等号(=)用来给变量赋值
= 左边是一个变量名
= 右边是存储在变量中的值
变量名 = 值
例如:
苹果的价格是 8.5 元/斤
买了 7.5 斤 苹果
计算付款金额
# 定义苹果价格变量
price = 8.5
# 定义购买重量
weight = 7.5
# 计算金额
money = price * weight
print(money)
变量的类型
在内存中创建一个变量,会包括:
- 变量的名称
- 变量保存的数据
- 变量存储数据的类型
- 变量的地址(标示)
在 Python 中定义变量是 不需要指定类型(在其他很多高级语言中都需要)
数据类型可以分为 数字型 和 非数字型
数字型:
- 整型 (int)
- 浮点型(float)
- 布尔型(bool)
- 复数型 (complex)
非数字型:
- 字符串(str)
- 列表[list]
- 元组(tuple)
- 字典{dict}
数字型
整型 (int):即为整数型
浮点型(float):即为带小数点的数,不包括无限小数,不区分精度
布尔型(bool):返回值只有两种
真 True (非 0 数) —— 非零即真
假 False(0)
复数型 (complex):包含一个有序对,表示为a+bj,a是实部,b是虚部
非数字型:
- 字符串(str)
"这是一组字符串"
字符串的操作方法:
1.字符串大小写转换
- X.lower(): 字母大写转换成小写
- X.upper():字母小写转换成大写
- X.swapcase():字母大小写互换
- X.title():将首字母大写
X = 'AbcDe'
print(X.lower()) #字母大写转换成小写
print(X.upper()) #字母小写转换成大写
print(X.swapcase()) #字母大小写互换
print(X.title()) #将首字母大写
2.字符串中的搜索,替换
A.find(‘abc’,[start[end]]):找到A中第一个abc,如果没有,则返回-1,start end相当于A[start:end]中搜索
A.count(‘abc’,[start[end]]):计算abc出现的次数
A.replace(‘old’,‘new’,count):将old替换为new,count为替换的次数
A.strip(‘abc’):将abc左右两端的字符全部去掉,一般用于去除空格
A.lstrip(‘abc’):将abc左端的字符全部去掉
A.rstrip(‘abc’):将abc右端的字符全部去掉
注意:strip方法只能用于删首尾,不能删中间字符
X = 'AbDxcv '
a = X.find('Ab')
print(a)
e = X.replace('D', 'y', 1)
print(e)
c = X.strip('A')
print(c)
3.字符串的分割与组合
A.split([abc,[maxsplit]]):以abc为分隔符,把A分割成一个list,maxlsplit表示分割的次数
’ ‘.join(A):将A中’ '合并
a='a b c d e'
print(a.split(' '))
b=('a','b','c')
print(''.join(b))
4.字符串的编码解码
A.decode([encoding]):解码成unicode编码
A.encode([encoding]):将Unicode编码成encoding,可以是gb2312,gbk,big5…
a='这是一个惊喜'
b=a.encode(encoding='gbk')
c=b.decode('gbk')
print(b)
print(c)
5.字符串的测试
A.isalpha():是否全是字母
A.isdigit():是否全是数字
A.isspace():是否全是空格
A.islower():是否全是小写
A.isupper():是否全是大写
A.istitle():是否首字母大写
a='123'
print(a.isdigit())
print(a.isalpha())
print(a.isspace())
print(a.islower())
print(a.istitle())
- 列表[list]
List(列表) 是 Python 中使用 最频繁 的数据类型,在其他语言中通常叫做 数组,专门用于存储 一串 信息,列表用 [] 定义,数据 之间使用 , 分隔列表的 索引 从 0 开始
注意:从列表中取值时,如果 超出索引范围,程序会报错
name_list = ["zhangsan", "lisi", "wangwu"]
列表的增删查改:
- 元组(tuple)
性质:元组里面的元素无法修改
元组 在 Python 开发中,有特定的应用场景,用于存储 一串 信息,数据 之间使用 , 分隔
元组用 () 定义
元组的 索引 从 0 开始,索引 就是数据在 元组 中的位置编号
元组中 只包含一个元素 时,需要 在元素后面添加逗号
info_tuple = (50, )
元组重复的操作与列表类似,具体如下:
>>> tuple = (123,)
>>> tuple*3
(123, 123, 123)
>>> tuple *= 3
>>> tuple
(123, 123, 123)
元组和列表之间的转换
使用 list 函数可以把元组转换成列表:
list(元组)
使用 tuple 函数可以把列表转换成元组:
tuple(列表)
- 字典{dict}
dictionary(字典) 是 除列表以外 Python 之中 最灵活 的数据类型
字典同样可以用来 存储多个数据
通常用于存储 描述一个 物体 的相关信息
和列表的区别
- 列表 是 有序 的对象集合
- 字典 是 无序 的对象集合
字典用 {} 定义
字典使用 键值对 存储数据,键值对之间使用 , 分隔
- 键 key 是索引
- 值 value 是数据
- 键 和 值 之间使用 : 分隔
键必须是唯一的
值 可以取任何数据类型,但 键 只能使用 字符串、数字或 元组
xiaoming = {"name": "小明",
"age": 18,
"gender": True,
"height": 1.75}
字典的常用操作:
In [1]: xiaoming.
xiaoming.clear xiaoming.items xiaoming.setdefault
xiaoming.copy xiaoming.keys xiaoming.update
xiaoming.fromkeys xiaoming.pop xiaoming.values
xiaoming.get xiaoming.popitem
列表,元组,字典的循环遍历如下所示:
列表:
# for 循环内部使用的变量 in 列表
for name in name_list:
循环内部针对列表元素进行操作
print(name)
字典:
# for 循环内部使用的 `key 的变量` in 字典
for k in xiaoming:
print("%s: %s" % (k, xiaoming[k]))
元组:
# for 循环内部使用的变量 in 元组
for item in info:
循环内部针对元组元素进行操作
print(item)