数据类型
在python中无需预先定义数据类型,直接给数据赋值,系统自动转换变量的数据类型。
数字
整数 int
长整数 long,在python中没有指定位宽,即:Python没有限制长整数数值大小,但实际上由于机器内存的限制,不可能无限大
浮点数float
复数comple, 一般形式x+yj, x实数部分,y虚数部分
布尔值 True False
真或假
1或0
字符串
“hello world!"
字符串格式化输出
name = “will"
print("I am "+name+"and you?")
+可以拼接字符串,弊端,占用更多内存空间
print ("I am %s" %name) 建议使用变量
列表 列表里面可以存放任何数据,字符串、数字、列表
列表的常用操作
-list = [1,2,”monica”,”tom”] 创建、赋值列表
-list[x] 列表的取值,x为列表的下标,从0开始
:list[-1] 列表中最后一个值
:list[x:y] 列表中从x到y的值
-list[x] = “abc” 修改
-list.insert(2,”a”) 插入值。在下标2处插入a
-list.append(“song”) 在列表最后追加
-list.remove(“song”) 删除值为song的项
-list.pop(x) 删除下标为x项
-del list[x] 同上
-list.extend(list1) 扩展list,也可以理解为合并list
-list.revser() 反转列表
-list.copy() 复制列表。如果列表为嵌套列表,只复制第一层的具体数据,和第二层的内存地址
引入标准库copy, import copy 可以实现深度复制,即连第二层以下的具体数据都复制
copy.deepcopy()
-list.index(“zzz”) 返回第一个值为zzz的索引
-list.count(“zzz”) 返回值为zzz的个数
-len(list)) 返回列表的长度,即第一层数据的个数
作业:把列表中9的值改为999,同时删除列表中34的值。
list = ['zhangsan',9,'lisi',34,18,3,2,9,'lisi',9,34,'hehe',99,'ok',23,34]
new_list = [] #用来存放数据为34的下标
print ("list[]= ",list)
for i in range (len(list)):
if list[i] == 9:
list[i] = 999
elif list[i] == 34:
new_list.append(i)
print("list2[]= ",list)
new_list.reverse() #从原list后面开始删除,如果从前面开始删除会导致下标改变
for i in range(len(new_list)):
del list[new_list[i]]
print("list3[]= ",list)
运行结果为
list[]= [‘zhangsan’, 9, ‘lisi’, 34, 18, 3, 2, 9, ‘lisi’, 9, 34, ‘hehe’, 99, ‘ok’, 23, 34]
list2[]= [‘zhangsan’, 999, ‘lisi’, 34, 18, 3, 2, 999, ‘lisi’, 999, 34, ‘hehe’, 99, ‘ok’, 23, 34]
list3[]= [‘zhangsan’, 999, ‘lisi’, 18, 3, 2, 999, ‘lisi’, 999, ‘hehe’, 99, ‘ok’, 23]