新增内容:
1、与用户交互 input raw_input
![]()
1 '''
2 1、什么是与用户交互
3 程序等待用户输入一些数据,然后程序执行完毕后为用户反馈信息
4
5 2、为何程序要与用户交互
6 为了让计算机能够像人一样与用户的交互
7
8 3、如何用
9 在python3中:
10 input
11 '''
12 # 在python3中,input会将用户输入的任何内容都存成字符串类型
13 # name=input('请输入你的账号名: ') #name='123'
14 # print(name,type(name))
15
16 # 在python2中:raw_input会将用户输入的任何内容都存成字符串类型
17 '''
18 C:\Users\oldboy>python2
19 Python 2.7.15 (v2.7.15:ca079a3ea3, Apr 30 2018, 16:30:26) [MSC v.1500 64 bit (AMD64)] on win32
20 Type "help", "copyright", "credits" or "license" for more information.
21 >>> name=raw_input('>>>>>>>>>>>>>>>>>>>>>>>>>>>>: ')
22 >>>>>>>>>>>>>>>>>>>>>>>>>>>>: egon
23 >>>
24 >>>
25 >>>
26 >>> print(name)
27 egon
28 >>> print(name,type(name))
29 ('egon', <type 'str'>)
30 >>>
31 >>>
32 >>> name=raw_input('>>>>>>>>>>>>>>>>>>>>>>>>>>>>: ')
33 >>>>>>>>>>>>>>>>>>>>>>>>>>>>: 1231231231232
34 >>>
35 >>>
36 >>> print(name,type(name))
37 ('1231231231232', <type 'str'>)
38 >>>
39 >>>
40 >>> name
41 '1231231231232'
42 >>> name,type(name)
43 ('1231231231232', <type 'str'>)
44 '''
45
46 #在python2中:input要求用户必须输入一个明确的数据类型,输入什么类型就存成什么类型
47 '''
48 >>> x=input("输入: ")
49 输入: egon
50 Traceback (most recent call last):
51 File "<stdin>", line 1, in <module>
52 File "<string>", line 1, in <module>
53 NameError: name 'egon' is not defined
54 >>> x=input("输入: ")
55 输入: 'egon'
56 >>>
57 >>> x,type(x)
58 ('egon', <type 'str'>)
59 >>>
60 >>>
61 >>>
62 >>> x=input("输入: ")
63 输入: [1,2,3]
64 >>>
65 >>> x,type(x)
66 ([1, 2, 3], <type 'list'>)
67 >>>
68 >>>
69 >>> y=raw_input('####: ')
70 ####: [1,2,2,3]
71 >>>
72 >>> y,type(y)
73 ('[1,2,2,3]', <type 'str'>)
74
75 '''
用户交互
2、格式化输出
![]()
1 %s、%d等,代表占位符,表示位置被需要输入的数据类型代替。
2
3 # name=input('please input your username:')
4 # age=input('please input your age:')
5 # print('my name is',name,'my age is',age)
6 # print('my name is %s,my age is %s' %(name,age))
7
8 '''
9 my name is 输入的用户名,my age is 输入的年龄
10 '''
11
12 # print('my name is %s my age is %s' %(18,'egon'))
13
14
15 # print('my name is %s my age is %d' %('egon',18))
16 # print('my name is %s my age is %s' %('egon',18))
17 # print('my name is %s my age is %s' %('egon',[1,2,3])) # %s可以接收任意类型的值
18 # print('my name is %s my age is %d' %('egon','xxx')) # %d只能接收数字类型
格式化输出
![]()
1 name=input("请输入姓名:")
2 age=input("请输入年龄:")
3 sex=input("请输入性别")
4 job=input("请输入工作")
5 msg="""
6 --------------%s--------------
7 name : %s
8 age : %s
9 sex : %s
10 job : %s
11 --------------info--------------
12 """ %(name,name,age,sex,job)
13 print(msg)
14
15 # %s代表占位符
16 # print("--------------info--------------")
17 # print("name :%s" % name)
18 # print("age :%s" % age)
19 # print("sex :%s" % sex)
20 # print("job :%s" % job)
21 # print("--------------info--------------")
22
23 格式化输出进阶:(加上字典)
24 city_info={
25 "beijing":{
26 "capital":"北京市",
27 "area":"1.641万平方千米",
28 "people":"2170.7万",
29 },
30 "zhejiang":{
31 "capital":"杭州市",
32 "area":"10.55万平方公里",
33 "people":"5657万人",
34 }
35 }
36
37 info="""
38 =========%s========
39 省会 :%s
40 面积 :%s
41 人口 :%s
42 ========= end ========
43 """ % (city_info["beijing"]["capital"],city_info["beijing"]["capital"],city_info["beijing"]["area"],city_info["beijing"]["people"])
44 print(info)
格式化输出实例
3、基本数据类型
![]()
1 int
2 #1、整型:int
3 #作用:记录年龄,等级,QQ号,各种号码
4 #定义:
5 # age=18 #age=int(18)
6 # print(age,type(age))
7 #使用
8
9 float
10 #2、浮点型:float
11 #作用:记录身高、体重、薪资
12 #定义:
13 # salary=3.1 #salary=float(3.1)
14 # print(salary,type(salary))
15 #使用:
16
17 str
18 #3.字符类型:str
19 #作用:记录描述性质的数据,比如人的名字、性别、家庭地址、公司简介
20 #定义:在引号内按照从左到右的顺序依次包含一个个字符,引号可以是单引号、双引号、三引号
21
22 # name1='egon1'
23 # print(type(name1))
24 #
25 # name2="egon2"
26 # print(type(name2))
27
28 # info="""
29 # compay
30 # name:OLDBOY
31 # addr:SH
32 # """ # 三引可以存多行
33 # print(type(info))
34 # print(info)
35
36 # 注意引号的配对
37 # print("my name is 'egon'")
38 # print('my name is "egon"')
39
40 # 使用:
41 # x=1
42 # y=2
43 # print(x+y)
44 # msg1='hello'
45 # msg2='world'
46 # print(msg1+msg2)
47
48 # 强调:
49 #1、字符串之间可以相加:
50 # '1111'+2222
51 #2、字符串相加是新申请内存空间然后拷贝相加的字符串到新的空间中,效率不高
52 # print('my name is '+'egon'+' my age is '+'18')
53
54 #3、字符串还可以做乘法运算
55 # print('hello'*10)
56 # print('='*100)
基本数据类型
创建字符串的三种写法及其区别
![]()
1 字符串大小比较
2 info1='hello',info2='zaijian',当info1和info2进行比较时,字符串将会按照A-Za-z得顺序,依次比较每一位上字符得大小。
3 >>> info1='hello'
4 >>> info2='zaijian'
5 >>> info1 > info2
字符串大小比较
list
![]()
1 #4 列表类型:list
2 #作用:记录/存多个值,可以方便地取出来指定位置的值,比如人的多个爱好,一堆学生姓名
3 #定义:在[]内用逗号分隔开多个任意类型的值
4 l=[10,3.1,'egon',['a','b']] # l=list([10,3.1,'egon',['a','b']])
5 # print(l)
6 # print(l[0])
7 # print(l[2])
8 # print(l[3])
9 # print(l[3][1])
10
11 # l1=['a','b',['c',['d',]]]
12 # print(l1[2][1][0])
13 print(type(l))
14
15 #使用:
16 # hobbies="read music sleep eat play"
17 # hobbies=["read","music","sleep","eat","play"]
18 # print(hobbies[2])
19
20 students_info=[
21 ['egon',18,['play',]],
22 ['alex',18,['play','sleep']]
23 ]
24 print(students_info[1][2][0])
列表
dict
![]()
1 #5 字典类型:dict
2 #作用:记录多个key:value值,优势是每一个值value都有其对应关系/映射关系key,而key对value有描述性的功能
3 #定义: 在{}内用逗号分隔开多个key:value元素,其中value可以是任意的数据类型,而key通常应该是字符串类型
4 # info={'name':'egon','sex':'male','age':18} #info=dict({'name':'egon','sex':'male','age':18})
5 # print(type(info))
6
7 # print(info['name'])
8
9 # name age sex comapy_info
10 # emp_info=['egon',18,'male',['oldboy',200,'SH']]
11
12 # print(emp_info[2])
13 # print(emp_info[3][0])
14
15 # emp_info={
16 # 'name':'egon',
17 # 'age':18,
18 # 'sex':'male',
19 # 'comapy_info':{
20 # 'cname':'oldboy',
21 # 'emp_count':200,
22 # 'addr':'SH'
23 # }
24 # }
25 #
26 # print(emp_info['comapy_info']['cname'])
27
28
29 names={
30 'name1':'egon',
31 'name2':'alex'
32 }
字典
![]()
1 使用字典保存各省的省会是什么以及省会的信息,
2 例如 北京市 省会:直辖市 面积:XX 人口:XX ,浙江省: 省会:杭州市 面积:XX 人口:XX
3 最后取出北京市按以下格式打印
4 ========= 北京 ========
5 省会:%s
6 面积:%s
7 人口:%s
8 ========= end ========
9 """
10 dic = {"浙江":{"省会":"杭州","面积":"100w","人口":"3000万"},
11 "北京市":{"省会":"直辖市","面积":"80w","人口":"5000万"}}
12 # 打印北京信息
13 msg = """
14 ========= %s ========
15 省会:%s
16 面积:%s
17 人口:%s
18 ========= end ========
19 """ % ("北京",dic["北京市"]["省会"],dic["北京市"]["面积"],dic["北京市"]["人口"])
使用字典保存各省的省会
bool
![]()
1 #6 布尔类型:bool
2 #作用:用来作为判断的条件去用
3 #定义:
4 # tag=True # tag=bool(True)
5 # tag=False
6 # print(type(tag))
7
8 #通过判断去得到布尔值
9
10 # print(age > 20)
11 # print(age >= 20)
12
13 # age=18
14 # ==比较的是值
15 # print(age == 18)
16 # is:比较的是id是否相等
17 # 强调:id相等值一定相等,id不等但是值仍然可以相等
18
19 # x=1
20 # y=x
21 # print(x is y)
22
23 tag=True
24 print(id(tag))
25
26 res=3 > 1
27 print(id(res))
28
29 res2=1 < 10
30 print(id(res))
布尔类型
4、运算符
![]()
1 # 算数运算
2 # res=1 + 3
3 # print(res)
4 # print(1 + 3)
5 # print(10 / 3) #结果保留小数部分
6 # print(10 // 3) # 只保留整数部分
7 # print(10 % 3) # 取余数
8 # print(2**3)
9
10 # 比较运算:== != > < >= <=
11 # 了解知识:
12 # 数字之间可以互相比较大小
13 # print(10 > 3)
14 # print(10 > 3.1)
15
16 # 而字符串只能与字符串比较大小(按照对应位置的字符参考ASCII表去比较的)
17 # msg1='hello'
18 # msg2='z'
19 # print(msg1 > msg2)
20
21 # A-Za-z
22 # print('a' > 'Z')
23 # print('Z' > 'Y')=
24 # print(len('hello') > 3)
25 # print('a' > 3)
26
27 #列表只能与列表比较大小(按照对应位置的值依次比较,对应位置的值必须是相同的类型)
28 # l1=[1,2,3]
29 # l2=[10,]
30 # print(l2 > l1)
31 # l3=[10,2,'b',3]
32 # l4=[10,2,'b','c']
33 # print(l3 > l4)
34
35
36
37
38 # 赋值运算
39 # age=18
40 # 增量赋值
41 # age+=1 #age=age+1
42 # print(age)
43
44 # 链式赋值
45 # x=100
46 # y=x
47 # z=x
48 # x=z=y=100
49 # print(id(x),id(y),id(z))
50
51 # 交叉赋值
52 # m=1000
53 # n=2000
54 #
55 # # temp=m
56 # # m=n
57 # # n=temp
58 # n,m=m,n
59 # print(m,n)
60
61 # 解压赋值
62 # salaries=[11,22,33,44,55,]
63 # mon1=salaries[0]
64 # mon2=salaries[1]
65 # mon3=salaries[2]
66 # mon4=salaries[3]
67 # mon5=salaries[4]
68 # mon1,mon2,mon3,mon4,mon5=salaries
69 # print(mon1,mon2,mon3,mon4,mon5)
70
71 # 等号右面包含的值的个数必须与等号左边变量名的个数一致
72 # mon1,mon2,mon3,mon4,mon5,mon6=salaries
73 # mon1,mon2,mon3,mon4,=salaries
74
75 # _=3333
76 # print(_)
77 # mon1,mon2,_,_,_=salaries
78 # mon1,mon2,*_=salaries
79 # print(mon1)
80 # print(mon2)
81
82 # salaries=[11,22,33,44,55,]
83 # first=salaries[0]
84 # last=salaries[4]
85
86 # first,_,_,_,last=salaries
87 # first,*_,last=salaries
88 # print(first)
89 # print(last)
90
91 age=20
92 sex='female'
93
94 #逻辑运算
95 # and:连接左右两个条件,只有在两个条件同时成立的情况下最终结果才为True
96 # print(age > 18 and age < 26 and sex == 'female' and 1 > 3)
97
98 # or:连接左右两个条件,但凡有一个条件成立最终结果就为True
99 # print(1 > 3 or 2 > 4 or 'x' == 'y' or 1==1)
100
101 # not
102 # print(not 1 > 3)
103 # print(not (1 > 3 or 2 > 4 or 'x' == 'y' or 1==1))
104
105 res=(3>4 and 4>3) or (1==3 and ('x' == 'x' or 3 >3))
106 print(res)
运算符
赋值方式 (之前介绍过增量赋值)
链式赋值
y=1
y=x
y=x=a=b=c=1 (id相同)
交叉赋值 (m,n值交换)
m=1
n=2
x=m
m=n
n=x
m=1
n=2
m, n=n, m
变量的解压
salaries = [11,12,13,14,15]
mon1_sal=salaries [0]
……
mon5_sal=salaries [4]
mon1_sal, mon2_sal, mon3_sal, mon4_sal, mon5_sal = salaries
注:左右数量必须一一对应,否则报错
mon1_sal, xxx, xx, xx, mon5_sal = salaries
mon1_sal, _, _, _, mon5_sal = salaries (约定‘_’代表抛弃的变量名)
*_, mon5_sal = salaries(‘*’代表所有)
input () for python2, python3
python3, 只有 input(); input()将用户输入的内容全部存为字符串类型
python2
raw_input() 等同于 python3 的input();将用户输入的内容全部存为字符串类型,不考虑输入类型。是python 2 的主要输入交互方式。
input() , 必须输入明确的数据类型,且输什么存什么。
while (条件循环) 条件:
循环体
else:
#若循环完毕后 while 没有被break打断,else所接的代码才被执行(最后被执行); 用处不大
身份运算是is;==不是身份运算
and or not 从左向右直行
False or True and False or True
False or True and False or True # 取第一个运算符看左右,若仅凭左边和运算符可以判断,右边的式子可忽略, True
True and False or True # 重复上一步, True
False or True # 重复上一步, True
所以, 结果为True
pass #什么都不做,可以做占位符
if 条件:
pass
elif 条件:
pass
elif 条件:
pass
# 若无pass/循环体,系统报错; if 后面可不接else/ elif;if中只执行一层代码。
数据类型int,float
复制代码
1 #一:基本使用:int
2 # 1 用途:记录年龄、等级、号码
3 #
4 # 2 定义方式
5 age=18 #age=int(18)
6 # print(type(age))
7 # int('abadf') #报错
8 # int('10.1') #报错
9 # int('101') #int只能将字符串中包含纯数字转成整型
10
11 # 进制转换(了解**)
12 # 其他进制转成十进制
13 # 二进制:0,1
14 # 10 #1*(2**1) + 0*(2**0)
15 # # 十进制:0-9
16 # 371 #3*(10**2) + 7*(10**1) + 1*(10**0)
17 # # 八进制:0-7
18 # 371 #3*(8**2) + 7*(8**1) + 1*(8**0)
19 # # 十六进制:0-9 A-F
20 # 371 #3*(16**2) + 7*(16**1) + 1*(8**0)
21
22 # 十进制转成其他进制
23 # print(bin(12))
24 # print(oct(12)) #14 =>1*(8**1) + 4*(8**0)
25 # print(hex(16))
26
27 # 3 常用操作+内置的方法
28
29 #二:该类型总结
30 # 1 存一个值
31 #
32 # 3 不可变
33 # x=10
34 # print(id(x))
35 # x=11
36 # print(id(x))
37
38
39 #一:基本使用:float
40 # 1 用途:记录身高、体重、薪资
41 #
42 # 2 定义方式
43 # salary=3.1 #salary=float(3.1)
44
45 # res=float('3.3')
46 # print(type(res))
47
48 # 3 常用操作+内置的方法
49
50 #二:该类型总结
51 # 1 存一个值
52 #
53 # 3 不可变
54 x=10.3
55 print(id(x))
56 x=10.4
57 print(id(x))
数据类型str以及内置方法
复制代码
1 #一:基本使用
2 # 1 用途:记录描述性的状态,比如人的名字、地址、性别
3
4 # 2 定义方式:在"",'',""""""内包含一系列的字符
5 # msg='hello' #msg=str('hello')
6 # res1=str(1)
7 # res2=str([1,2,3])
8 # print(type(res1),type(res2))
9 # info="'xxx'"
10
11 # 3 常用操作+内置的方法
12 #优先掌握的操作:
13 #1、按索引取值(正向取+反向取) :只能取
14 # msg='hello world'
15 # print(msg[4])
16 # print(msg[-1])
17 # msg[3]='A'
18 # name='egon'
19
20
21 #2、切片(顾头不顾尾,步长)
22 # msg='hello world' # 就是从一个大的字符串中切分出一个全新的子字符串
23 # print(msg[0:5])
24 # print(msg) # 没有改变原值
25
26 # print(msg[0:5:1])
27 # print(msg[0:5])
28 # print(msg[0:5:2]) #hlo
29
30 # 了解:
31 # print(msg[0:5:1])
32 # msg='hello world'
33 # print(msg[5:0:-1])
34 # print(msg[5::-1])
35 # print(msg[-1::-1])
36 # print(msg[::-1])
37
38 #3、长度len
39 # msg='hello world'
40 # print(len(msg))
41
42 #4、成员运算in和not in: 判断一个子字符串是否存在于一个大的字符串中
43 # print('alex' in 'alex is dsb')
44 # print('dsb' in 'alex is dsb')
45 # print('sb' in 'alex is dsb')
46 # print('xxx' not in 'alex is dsb') # 推荐
47 # print(not 'xxx' in 'alex is dsb')
48
49 #5、去掉字符串左右两边的字符strip,不管中间的
50
51 # user=' egon '
52 # user=' x egon '
53 # user="*******egon********"
54 # user=" **+* */***egon* **-*****"
55 # print(user.strip("* +/-"))
56
57 # user=input('>>>: ').strip()
58 # if user == "egon":
59 # print('用户名正确')
60
61 #6、切分split:针对按照某种分隔符组织的字符串,可以用split将其切分成列表,进而进行取值
62
63 # msg="root:123456:0:0::/root:/bin/bash"
64 # res=msg.split(':')
65 # print(res[1])
66
67 # cmd='dowload|a.txt|3333333'
68 # cmd_name,filename,filesize=cmd.split('|')
69
70 #7、循环
71 # msg='hello'
72 # for item in msg:
73 # print(item)
74
75 # 需要你掌握的
76 #1、strip,lstrip,rstrip
77 # print('*****egon*****'.lstrip('*'))
78 # print('*****egon*****'.rstrip('*'))
79 # print('*****egon*****'.strip('*'))
80
81 #2、lower,upper
82 # msg='aABBBBb'
83 # res=msg.lower()
84 # print(res)
85 # print(msg)
86
87 #3、startswith,endswith
88 # msg='alex is dsb'
89 # print(msg.startswith('alex'))
90 # print(msg.endswith('sb'))
91 # print(msg.endswith('b'))
92
93 #4、format的三种玩法
94 # print('my name is %s my age is %s' %('egon',18))
95 # print('my name is {name} my age is {age}'.format(age=18,name='egon'))
96
97 # 了解
98 # print('my name is {} my age is {}'.format(18,'egon'))
99 # print('my name is {0} my age is {1}{1}'.format(18,'egon'))
100
101 #5、split,rsplit
102 # msg='get|a.txt|333331231'
103 # # print(msg.split('|',1))
104 # print(msg.split('|',1))
105 # print(msg.rsplit('|',1))
106
107 #6、join
108 # msg='get|a.txt|333331231'
109 # l=msg.split('|')
110 # print(l)
111 #
112 # src_msg='|'.join(l)
113 # print(src_msg)
114
115 #7、replace
116 # msg='alex say i have one tesla,alex is alex hahaha'
117 # print(msg.replace('alex','sb',1))
118 # print(msg)
119
120 #8、isdigit # 判断字符串中包含的是否为纯数字
121 # print('10.1'.isdigit())
122 # age=input('>>: ').strip()
123 # if age.isdigit():
124 # age=int(age) #int('asfdsadfsd')
125 # if age > 30:
126 # print('too big')
127 # elif age < 30:
128 # print('too small')
129 # else:
130 # print('you got it')
131 # else:
132 # print('必须输入数字')
133
134 # 需要了解的内置方法
135 #1、find,rfind,index,rindex,count
136 msg='hello alex is sb'
137 # print(msg.find('alex'))
138 # print(msg.find('alex',0,3))
139
140 # print(msg.index('alex'))
141 # print(msg.index('alex',0,3))
142
143
144 # msg='alex aaa alex'
145 # print(msg.find('alex'))
146 # print(msg.rfind('alex'))
147
148 # msg='alex aaa alex'
149 # print(msg.count('alex')) # 统计一个子字符串在大字符串中出现的次数
150
151
152 #2、center,ljust,rjust,zfill
153 # print('egon'.center(50,'*'))
154 # print('egon'.ljust(50,'*'))
155 # print('egon'.rjust(50,'*'))
156 # print('egon'.zfill(50))
157
158 #3、expandtabs
159 # print('a\tb'.expandtabs(1))
160
161 #4、captalize,swapcase,title
162 # print('hello'.capitalize())
163 # print('hElLo'.swapcase())
164 # print('egon is nb'.title())
165
166 #5、is数字系列
167 #在python3中
168 num1=b'4' #bytes
169 num2=u'4' #unicode,python3中无需加u就是unicode
170 num3='壹' #中文数字
171 num4='Ⅳ' #罗马数字
172
173 # ''.isnumeric(): unicode,中文数字,罗马数字
174 # print(num2.isnumeric())
175 # print(num3.isnumeric())
176 # print(num4.isnumeric())
177
178 # ''.isdecimal(): unicode
179 # print(num2.isdecimal())
180 # print(num3.isdecimal())
181 # print(num4.isdecimal())
182
183 # ''.isdigit() :bytes,unicode
184 print(num1.isdigit())
185 print(num2.isdigit())
186 print(num3.isdigit())
187 print(num4.isdigit())
188
189
190 #6、is其他
191 # print('abc你'.isalpha()) # 字符串中包含的是字母或者中文字符
192
193 # 字符串中包含的是字母(中文字符)或数字
194 # print('ab'.isalnum())
195 # print('123123'.isalnum())
196 # print('ab123'.isalnum())
197
198
199
200 #二:该类型总结
201 # 1 存一个值
202 #
203 # 2 有序
204
205 # 3 不可变
206 # x='abc'
207 # print(id(x))
208 # x='def'
209 # print(id(x))
210
211 2、列表类型及内置方法
212
213 3、元组及内置方法
214 #一:基本使用
215 # 1 用途:存放多个值,可以根据索引存取值
216
217 # 2 定义方式:在[]内用逗号分割开多个任意类型的值
218 l=['egon','lxx','yxx'] # l=list(['egon','lxx','yxx'])
219 # l1=list('hello') #list就相当于调用了一个for循环依次取出'hello'的值放入列表
220 # print(l1)
221 # l2=list({'x':1,'y':2,'z':3})
222 # print(l2)
223 # list(10000) # 报错
224
225 # 3 常用操作+内置的方法
226 #优先掌握的操作:
227 #1、按索引存取值(正向存取+反向存取):即可存也可以取
228 l=['egon','lxx','yxx']
229 # print(l[0])
230 # l[0]='EGON'
231 # print(l)
232 # print(l[-1])
233 # print(l[3])
234 # l[0]='EGON' # 只能根据已经存在的索引去改值
235 # l[3]='xxxxxxxx' #如果索引不存在直接报错
236
237 #2、切片(顾头不顾尾,步长)
238 l=['egon','lxx','yxx',444,555,66666]
239 # print(l[0:5])
240 # print(l[0:5:2])
241 # print(l[::-1])
242
243 #3、长度
244 # l=['egon','lxx','yxx',444,555,66666,[1,2,3]]
245 # print(len(l))
246
247 #4、成员运算in和not in
248 # l=['egon','lxx','yxx',444,555,66666,[1,2,3]]
249 # print('lxx' in l)
250 # print(444 in l)
251
252 #5、追加
253 l=['egon','lxx','yxx']
254 # l.append(44444)
255 # l.append(55555)
256 # print(l)
257
258 #6、往指定索引前插入值
259 # l=['egon','lxx','yxx']
260 # l.insert(0,11111)
261 # print(l)
262 # l.insert(2,2222222)
263 # print(l)
264
265 #7、删除
266 # l=['egon','lxx','yxx']
267
268 # 单纯的删除值:
269 # 方式1:
270 # del l[1] # 通用的
271 # print(l)
272
273 # 方式2:
274 # res=l.remove('lxx') # 指定要删除的值,返回是None
275 # print(l,res)
276
277 # 从列表中拿走一个值
278 # res=l.pop(-1) # 按照索引删除值(默认是从末尾删除),返回删除的那个值
279 # print(l,res)
280
281 #8、循环
282 # l=['egon','lxx','yxx']
283 # for item in l:
284 # print(item)
285
286 # 需要掌握的操作
287 l=['egon','egon','lxx','yxx',444,555,66666]
288 # print(l.count('egon'))
289 # print(l.index('egon'))
290 # print(l.index('yxx',0,1))
291 # l.clear()
292
293 # items=['a','b','c']
294 # items='hello'
295 # for item in items:
296 # l.append(item)
297 # l.extend(items)
298 # print(l)
299
300 # l=['egon','egon','lxx','yxx',444,555,66666]
301 # l.reverse()
302 # print(l)
303
304 # nums=[3,-1,9,8,11]
305 # nums.sort(reverse=True)
306 # print(nums)
307
308 # items=[1,'a','b',2]
309 # items.sort()
310
311
312 #二:该类型总结
313 # 1 存多个值
314
315 #
316 # 2 有序
317 #
318 # 3 可变
319 # l=['a','b','c']
320 # print(id(l))
321 # l.append('d')
322 # print(id(l))
323
324
325 # 队列:先进先出
326 # l=[]
327 # # 入队
328 # l.append('first')
329 # l.append('second')
330 # l.append('third')
331 # print(l)
332 # # 出队
333 # print(l.pop(0))
334 # print(l.pop(0))
335 # print(l.pop(0))
336
337 # 堆栈:先进后出
338 l=[]
339 # 入栈
340 l.append('first')
341 l.append('second')
342 l.append('third')
343 # print(l)
344 # 出栈
345 print(l.pop())
346 print(l.pop())
347 print(l.pop())
练习
![]()
1 列表比较
2 >>> list1=[1,2,3,4]
3 >>> list2=[5,1,3,4]
4 >>> list1 > list2
5 False
6 list1=[1,2,3,4],list2=[5,1,3,4],list1与list2标记,遵循相应位置上对应位置进行大小比较
7 注意:1、字符串和列表得比较都必须时同类型得相应位置上得数据进行比较
8 2、如果比较得位置上得不是同类型数据,则会报错,因为无法完成比较
9 >>> list3=['1',2,3,4]
10 >>> list1 > list3
11 Traceback (most recent call last):
12 File "<stdin>", line 1, in <module>
13 TypeError: '>' not supported between instances of 'int' and 'str'
列表比较
![]()
1 实现四则运算 数据由用户输入 数字2个 符号一个(+ - * /)
2 # a = int(input("请输入第一个数"))
3 # b = int(input("请输入第二个数"))
4 # c = input("请输入运算符")
5 # if c == "+":
6 # print(a + b)
7 # elif c == "-":
8 # print(a - b)
9 # elif c =="*" :
10 # print(a * b)
11 # elif c == "/":
12 # print(a / b)
13 # else:
14 # print("兄弟 啥是四则运算?")
15 #
实现四则运算
|