一、python :解释型语言(无编译性)
交互式语言(提示符、互动执行)
面向对象语言(继承、封装):面向对象是将无实物高度抽象化。比如人事类,张三就是对象
初学者的语言
二、六个标准数据类型
number(数字) 、string(字符串)、list(列表)、tuple(元祖)、set(集合)、dictionary(字典)
1.number: int、bool、float、复数
2.string: \代表转义 在前面加r则不会进行转义
从左往右以0开始,从右往左从-1开始,规则:作闭右开
字符串不能改变,没有单独的字符类型,空行也是程序代码的一部分
实例:
#!/usr/bin/python3
a = 'Hello'
b = 'Python'
print('a+b 输出结果:',a+b)
print('a*2 输出结果:',a*2)
print('a[1]输出结果:',a[1])
print('a[1:4]输出结果:',a[1:4])
if('H'in a):
print('H在变量a中')
else:
print('H不在变量a中')
if('M'not in a):
print('M不在变量a中')
else:
print('M在变量a中')
print(r'\n')
print(R'\n')
运行结果:
a+b 输出结果: HelloPython
a*2 输出结果: HelloHello
a[1]输出结果: e
a[1:4]输出结果: ell
H在变量a中
M不在变量a中
\n
\n
实例:
3.list :变量【头下标,尾小标】
list中元素是可以改变的
与字符串一样,list可以被索引和切片
list可以用+操作符进行拼接
实例:
#!/usr/bin/python3
list1 = ['Google','Nowcoder',1997,2000];
list2 = [1,2,3,4,5,6,7];
print("list1[0]:",list1[0])
print("list2[1:5]:",list2[1:5])
print("\n==============更新列表=====================")
print("第三个元素为:",list1[2])
list1[2] = 2001
print("更新后的第三个元素为:",list1[2])
print("\n==================删除列表元素=================")
print("原始列表:",list1)
del list1[2]
print("删除第三个元素:",list1)
a = [1,2,3]
for x in a:
print(x)
for x in [1,2,3]:
print(x)
for x in[1,2,3]:
print(x,end=" ")
print("\n\n=======================拼接列表===================")
squraes = [1,4,9,16,35]
squraes +=[35,37,38,39,81,100]
print("拼接列表为:",squraes)
print("\n===========================嵌套列表=================")
a = ['a','b','c'] #分号只是代表语句结束,可加可不加
b = [1,2,3]
x = [a,b]
print("x = ",x)
print("x[0][1] = ",x[0][1])
运行结果:
list1[0]: Google
list2[1:5]: [2, 3, 4, 5]
==============更新列表=====================
第三个元素为: 1997
更新后的第三个元素为: 2001
==================删除列表元素=================
原始列表: ['Google', 'Nowcoder', 2001, 2000]
删除第三个元素: ['Google', 'Nowcoder', 2000]
1
2
3
1
2
3
1 2 3
=======================拼接列表===================
拼接列表为: [1, 4, 9, 16, 35, 35, 37, 38, 39, 81, 100]
===========================嵌套列表=================
x = [['a', 'b', 'c'], [1, 2, 3]]
x[0][1] = b
4.tuple:元祖的元素不能修改,不能二次赋值,相对而言只读功能
在小括号里面0
元素类型可以不同
实例:
#!/usr/bin/python3
tup1 = ('Google','Nowcoder',1997,2001)
tup2 = (1,2,3,4,5)
tup3 = "a","b","c","d" #不需要括号也可以
tup4 = 1,2,3,5
print("tup3的数据类型是:",type(tup3))
print("tup4的数据类型是:",type(tup4))
#创建空元祖
tup5 = ()
#只包含一个元素时,需要在元素后面加逗号,否则会被当成运算符使用
tup6 = (6)
print("",type(tup6))
tup7 = (7,)
print("",type(tup7))
print("\n\n================访问元祖================")
print("tup1[0]:",tup1[0])
print("tup2[1:5]:",tup2[1:5])
print("\n\n=================修改元祖=================")
#元祖中的元素值是不允许修改的,但我们可以对元祖进行连接组合
tup8 = (12,34.34)
tup9 = ('abc','cds')
tup10 = tup8+tup9
print(tup10)
print("\n\n================删除元祖===========")
print("元祖中的元素值是不允许删除的")
print("\n\n==================元祖运算符====================")
for x in (1,2,3):
print(x,)
for x in(5,6,7):
print(x,end = " ")
运行结果:
tup3的数据类型是: <class 'tuple'>
tup4的数据类型是: <class 'tuple'>
<class 'int'>
<class 'tuple'>
================访问元祖================
tup1[0]: Google
tup2[1:5]: (2, 3, 4, 5)
=================修改元祖=================
(12, 34.34, 'abc', 'cds')
================删除元祖===========
元祖中的元素值是不允许删除的
==================元祖运算符====================
1
2
3
5 6 7
5.set : 创造一个无序不重复元素集
pername={value}/set(value)
创建一个空集合必须用set(),而不是{},{}是用来创建一个空字典的
功能:进行成员关系测试/删除重复元素
实例:
#!/usr/bin/python3
basket = {'apple','orange','apple','pear','orange','banana'}
print(basket)
if 'orange' in basket:
print("true")
else:
print("false")
print("===========================集合运算========================")
a = set('abracadabra')
b = set('alacazam')
print("a-b = ",a-b)
print("a|b = ",a|b)
print("a&b = ",a&b)
print("a^b = ",a^b)
print("======================添加元素====================")
t = set(('Google','Nowcoder','Taobo'))
t.add('Facebook')
print(t)
t.update({1,3})
print(t)
t.update([1,4],[5,6])
print(t)
print("\n=====================移除元素===================")
t.remove('Taobo')
print(t)
print("\n===================随机删除集合====================")
y=t.pop()
print(y)
print(t)
print("\n======================计算集合=====================")
print("计算集合元素个数:",len(t))
print("\n=======================清空集合=====================")
t.clear()
print(t)
print("\n========================判断元素是否在集合中==================")
if "Nowcoder"in t:
print("true")
else:
print("false")
运行结果:
{'banana', 'pear', 'orange', 'apple'}
true
===========================集合运算========================
a-b = {'d', 'r', 'b'}
a|b = {'a', 'l', 'c', 'd', 'z', 'm', 'r', 'b'}
a&b = {'a', 'c'}
a^b = {'m', 'l', 'd', 'z', 'r', 'b'}
======================添加元素====================
{'Facebook', 'Taobo', 'Google', 'Nowcoder'}
{'Taobo', 'Google', 'Nowcoder', 1, 3, 'Facebook'}
{1, 3, 4, 5, 6, 'Taobo', 'Google', 'Facebook', 'Nowcoder'}
=====================移除元素===================
{1, 3, 4, 5, 6, 'Google', 'Facebook', 'Nowcoder'}
===================随机删除集合====================
1
{3, 4, 5, 6, 'Google', 'Facebook', 'Nowcoder'}
======================计算集合=====================
计算集合元素个数: 7
=======================清空集合=====================
set()
========================判断元素是否在集合中==================
false
6.dictionary: 无序的,由{}来标识
同一字典中,key是唯一的,但值不一定
一种映射类型,它的元素是键值对关键字必须为不可变类型,且不能重复
字典是另一种可变容器模型,且可存储任意类型对象
重点: 不允许同一个键出现两次;键必须不可变,所以可以用数字、字符串、元祖充当,而列表不行