python基础知识(一)
——以下所有内容均来自于蓝鲸运维SaaS开发实战公开课的ppt,我对其进行了整理做了笔记,便于以后查看学习。
- 动态强类型 通用型 解释型 语言
- 一切皆对象
- int,float,boolean,string,list,tuple,dict,set,file
逻辑判断符:
if None or 0 or '' or () or [] or {}:
print("it is true")
else:
print("it's false")
#普通的条件判断
if a>0:
print("positive")
else:
if a<0:
print("negative")
else:
print("zero")
# 多case判断
if a>0:
print("positive")
elif a<0:
print("negative")
else:
print("zero")
结果:it’s false
int(有符号整型) -127
float
注意:强制类型转换不是四舍五入
字符串 string
定义:s=‘ilovepython’
python访问字符串的值:
- 从左到右索引默认0开始,从右到左索引默认从-1开始,最大范围是字符串开头
s[0] # i
s[1:5] #love
s[-6:] #python
s[::-1] #nohtypevoli 等价于s[-1::-1] 最后一个-1是步长 step为负数从右向左截取
字符串常用内建函数
注意:find()函数找不到时报错,index()找不到时返回-1
修正: find()函数找不到时返回-1,index()找不到时报错。
strip() 去掉前后空格
replace(旧字符,新字符)
split()有空格就切
join()
几种字符串格式化方式
列表 list
定义:a_list = [ ‘physics’,‘chemistry’,‘1997’,‘2000’]
- 访问列表中的值:
a_list[1]
a_list[0:1] #切片参考string - 更新/删除列表
a_list[2]=2001
del a_list[2]
常用列表方法
append()函数没有返回值
注意以下两个方法的区别:第一个原字符串也改变,第二个原字符串没有改变。
数据类型 -list-list comprehension
注意比较两个方法的不同之处:
方法一:
方法二:
方法一其实是对fruits的引用,当fruits变化时,big_fruits也会随之变化。方法二是新创建了一个list只是其中的值与fruits相同,当fruits变化时,并不影响big_fruits中新创建的list.
修改列表元素:相当于二维数组
元组 tuple:操作特性和list类似
定义:
seq=(‘physics’,‘chemistry’,1997,2000)
seq=(1,) #当只有一个元素时加 ,
seq=‘physics’,‘chemistry’,‘1997’,‘2000’
元组不放在赋值号左边,因其本身不可变。
注意操作的对象:
数据类型-sequence(string list tuple)&控制流-for循环语句
控制流while循环语句
插入x后:
字典 dict
也可以理解为映射,key-value的键值对
定义:
字典基本操作:
取值 修改 删除
字典特性:
- 不允许同一个键出现两次。如果同一个键被赋值两次,第二次的键值会被保存。
- 键必须不可变,所以可用数字,字符串或元组充当。
字典常用方法
集合set
类似数学上的定义:
如下分别是求 交集 并集 补集 对称差
注意:set与字典的键一样,可以去重,底层是哈希值。list不能作为set元素。