In [2]:
#ASCII和字母之间的转化
ord('A')
Out[2]:
65
In [3]:
chr(65)
Out[3]:
'A'
In [48]:
a=['ln','你好','aaaa']
a
Out[48]:
['ln', '你好', 'aaaa']
In [28]:
len(a)
Out[28]:
3
In [29]:
name='addd'
name.encode('utf-8')
Out[29]:
b'addd'
In [32]:
name2=name.encode('utf-8')
name2.decode('gbk')
Out[32]:
'addd'
In [40]:
##list中最后一个元素的索引可以是-1,等同于a[2]
a[-1]
Out[40]:
'aaaa'
In [49]:
#追加元素
a.append([1,3])
a
Out[49]:
['ln', '刘念', 'aaaa', [1, 3]]
In [51]:
#将元素插到指定位置
a.insert(1,'N01')
a
Out[51]:
['ln', 'N01', '刘念', 'aaaa', [1, 3]]
In [52]:
#要删除list末尾的元素用pop
a.pop()
a
Out[52]:
['ln', 'N01', '刘念', 'aaaa']
In [53]:
#删除指定位置的元素
a.pop(1)
a
Out[53]:
['ln', '刘念', 'aaaa']
In [54]:
#把某个元素替换成别的元素,可以直接赋值给对应的索引位置
a[0]='rgb'.encode('utf-8')
a
Out[54]:
[b'rgb', '刘念', 'aaaa']
In [56]:
a.insert(2,['hello','who'])
a
Out[56]:
[b'rgb', '刘念', ['hello', 'who'], 'aaaa']
In [57]:
a[2][1]
Out[57]:
'who'
In [58]:
len(a)
Out[58]:
4
In [60]:
##tuple
#有序列表tuple,初始化之后就不能修改,用()
a2=('bad','刘念',1243)
a2
Out[60]:
('bad', '刘念', 1243)
In [62]:
#如果tuple中只有一个元素,那么定义的时候需要加一个,以免和定义一个量产生歧义
#如下,t1是一个tuple,t2是一个整数
t1=(2,)
t1
Out[62]:
(2,)
In [69]:
t2=(2)
t2
Out[69]:
2
In [70]:
#注意,如果tuple中有list元素,那么这个list里面的内容是可以变的
t2=(222,'aa',['X'])
t2[2][0]='Y'
t2
Out[70]:
(222, 'aa', ['Y'])
In [71]:
t2[2].insert(0,'X')
t2
Out[71]:
(222, 'aa', ['X', 'Y'])
In [76]:
##if语句
age=20
if age>=18:
print('your age is ',age)
print('adult')
your age is 20
adult
In [77]:
age=int(input('请输入你的年龄:'))
if age>=18:
print('your age is',age)
print('adult')
elif age>=6:
print('teenager')
else:
print('kid')
请输入你的年龄:12
teenager
In [79]:
##循环
#python中的循环有两种,一种是for in,依次把list或者是tuple中的元素迭代出来,看例子
names=['Michael','Bob','Tracy']
for name in names:
print(name)
Michael
Bob
Tracy
In [80]:
sum=0
for x in [1,2,3,4,5]:
sum=sum+x
print(sum)
1
3
6
10
15
In [86]:
range(5)#表示从0到5之间的整数,不包括5
sum=0
for x in range(101):
sum=sum+x
print(sum)
5050
In [88]:
#另一种循环是while,只要条件满足就循环
sum=0
n=99
while n>0:
sum=sum+n
n=n-2
print(sum)
2500
In [ ]:
###ctrl+c退出死循环
In [112]:
##dict和set
#python中dictionary在其他语言中也称为map,使用key-value有极快的查找素的,dict的查找速度非常的快
d={'Michael':95,'Bob':75,'Tracy':60}
d['Bob']
Out[112]:
75
In [104]:
#改变字典中的值
d['Michael']=98
d
Out[104]:
{'Bob': 75, 'Michael': 98, 'Tracy': 60}
In [105]:
#判断字典中是否有某个值
'Bob'in d
Out[105]:
True
In [106]:
'Lily'in d
Out[106]:
False
In [108]:
#dict也可以使用get函数判断某个值是否存在,这里如果不存在则返回-1,这个返回值可以自己设定
d.get('Tom',-1)
Out[108]:
-1
In [113]:
#要删除某个key使用pop(key)
d.pop('Tracy')
d
Out[113]:
{'Bob': 75, 'Michael': 95}
In [ ]:
#注意dict中存放的顺序和key的顺序是没有关系的
#和list比较,dict有以下几个特点
#1、查找和插入的速度极快,不会随着key的增加而增加
#2、需要占用内存大
#list则相反
#1、查找和插入的时间随着元素的增加而增加
#2、占用空间小
#所以dict是空间换取时间的一种方法
#dict中的key必须是不可变的才能用来查找到对应的value位置,所以list是不能作为key的,而字符串和整数等都死不变的,可以
In [115]:
##set,和dict类似{},也是key的集合,但是不存储value.由于key不能重复,所以在set中也是
#set需要提供一个list作为输入集合
s=set([1,2,3])
s
Out[115]:
{1, 2, 3}
In [116]:
s.add(4)
s
Out[116]:
{1, 2, 3, 4}
In [117]:
s.remove(2)
s
Out[117]:
{1, 3, 4}
In [118]:
s1=set([1,2,3])
s2=set([2,3,4])
s1&s2#计算交集
Out[118]:
{2, 3}
In [119]:
s1|s2#计算并集
Out[119]:
{1, 2, 3, 4}
In [120]:
#set和dict的唯一区别在于没有对应的value,但是set的原理和dict一样,所以同样不可以放可变的对象。
#因为无法判断两个可变对象是否相等,就不能保证set中没有重复元素
In [121]:
#关于不可变对象,str是不变对象,list是可变对象
#对list进行操作,list的内容会变化
a=['c','b','a']
a.sort()
a
Out[121]:
['a', 'b', 'c']
In [122]:
#对于不可变对象比如str,对str进行操作,他是不变的
a='abc'
a.replace('a','A')
Out[122]:
'Abc'
In [123]:
a
Out[123]:
'abc'
In [ ]:
In [ ]:
In [ ]:
In [ ]:
In [ ]:
In [ ]:
In [2]:
#ASCII和字母之间的转化
ord('A')
Out[2]:
65
In [3]:
chr(65)
Out[3]:
'A'
In [48]:
a=['ln','刘念','aaaa']
a
Out[48]:
['ln', '刘念', 'aaaa']
In [28]:
len(a)
Out[28]:
3
In [29]:
name='addd'
name.encode('utf-8')
Out[29]:
b'addd'
In [32]:
name2=name.encode('utf-8')
name2.decode('gbk')
Out[32]:
'addd'
In [40]:
##list中最后一个元素的索引可以是-1,等同于a[2]
a[-1]
Out[40]:
'aaaa'
In [49]:
#追加元素
a.append([1,3])
a
Out[49]:
['ln', '刘念', 'aaaa', [1, 3]]
In [51]:
#将元素插到指定位置
a.insert(1,'N01')
a
Out[51]:
['ln', 'N01', '刘念', 'aaaa', [1, 3]]
In [52]:
#要删除list末尾的元素用pop
a.pop()
a
Out[52]:
['ln', 'N01', '刘念', 'aaaa']
In [53]:
#删除指定位置的元素
a.pop(1)
a
Out[53]:
['ln', '刘念', 'aaaa']
In [54]:
#把某个元素替换成别的元素,可以直接赋值给对应的索引位置
a[0]='rgb'.encode('utf-8')
a
Out[54]:
[b'rgb', '刘念', 'aaaa']
In [56]:
a.insert(2,['hello','who'])
a
Out[56]:
[b'rgb', '刘念', ['hello', 'who'], 'aaaa']
In [57]:
a[2][1]
Out[57]:
'who'
In [58]:
len(a)
Out[58]:
4
In [60]:
##tuple
#有序列表tuple,初始化之后就不能修改,用()
a2=('bad','刘念',1243)
a2
Out[60]:
('bad', '刘念', 1243)
In [62]:
#如果tuple中只有一个元素,那么定义的时候需要加一个,以免和定义一个量产生歧义
#如下,t1是一个tuple,t2是一个整数
t1=(2,)
t1
Out[62]:
(2,)
In [69]:
t2=(2)
t2
Out[69]:
2
In [70]:
#注意,如果tuple中有list元素,那么这个list里面的内容是可以变的
t2=(222,'aa',['X'])
t2[2][0]='Y'
t2
Out[70]:
(222, 'aa', ['Y'])
In [71]:
t2[2].insert(0,'X')
t2
Out[71]:
(222, 'aa', ['X', 'Y'])
In [76]:
##if语句
age=20
if age>=18:
print('your age is ',age)
print('adult')
your age is 20
adult
In [77]:
age=int(input('请输入你的年龄:'))
if age>=18:
print('your age is',age)
print('adult')
elif age>=6:
print('teenager')
else:
print('kid')
请输入你的年龄:12
teenager
In [79]:
##循环
#python中的循环有两种,一种是for in,依次把list或者是tuple中的元素迭代出来,看例子
names=['Michael','Bob','Tracy']
for name in names:
print(name)
Michael
Bob
Tracy
In [80]:
sum=0
for x in [1,2,3,4,5]:
sum=sum+x
print(sum)
1
3
6
10
15
In [86]:
range(5)#表示从0到5之间的整数,不包括5
sum=0
for x in range(101):
sum=sum+x
print(sum)
5050
In [88]:
#另一种循环是while,只要条件满足就循环
sum=0
n=99
while n>0:
sum=sum+n
n=n-2
print(sum)
2500
In [ ]:
###ctrl+c退出死循环
In [112]:
##dict和set
#python中dictionary在其他语言中也称为map,使用key-value有极快的查找素的,dict的查找速度非常的快
d={'Michael':95,'Bob':75,'Tracy':60}
d['Bob']
Out[112]:
75
In [104]:
#改变字典中的值
d['Michael']=98
d
Out[104]:
{'Bob': 75, 'Michael': 98, 'Tracy': 60}
In [105]:
#判断字典中是否有某个值
'Bob'in d
Out[105]:
True
In [106]:
'Lily'in d
Out[106]:
False
In [108]:
#dict也可以使用get函数判断某个值是否存在,这里如果不存在则返回-1,这个返回值可以自己设定
d.get('Tom',-1)
Out[108]:
-1
In [113]:
#要删除某个key使用pop(key)
d.pop('Tracy')
d
Out[113]:
{'Bob': 75, 'Michael': 95}
In [ ]:
#注意dict中存放的顺序和key的顺序是没有关系的
#和list比较,dict有以下几个特点
#1、查找和插入的速度极快,不会随着key的增加而增加
#2、需要占用内存大
#list则相反
#1、查找和插入的时间随着元素的增加而增加
#2、占用空间小
#所以dict是空间换取时间的一种方法
#dict中的key必须是不可变的才能用来查找到对应的value位置,所以list是不能作为key的,而字符串和整数等都死不变的,可以
In [115]:
##set,和dict类似{},也是key的集合,但是不存储value.由于key不能重复,所以在set中也是
#set需要提供一个list作为输入集合
s=set([1,2,3])
s
Out[115]:
{1, 2, 3}
In [116]:
s.add(4)
s
Out[116]:
{1, 2, 3, 4}
In [117]:
s.remove(2)
s
Out[117]:
{1, 3, 4}
In [118]:
s1=set([1,2,3])
s2=set([2,3,4])
s1&s2#计算交集
Out[118]:
{2, 3}
In [119]:
s1|s2#计算并集
Out[119]:
{1, 2, 3, 4}
In [120]:
#set和dict的唯一区别在于没有对应的value,但是set的原理和dict一样,所以同样不可以放可变的对象。
#因为无法判断两个可变对象是否相等,就不能保证set中没有重复元素
In [121]:
#关于不可变对象,str是不变对象,list是可变对象
#对list进行操作,list的内容会变化
a=['c','b','a']
a.sort()
a
Out[121]:
['a', 'b', 'c']
In [122]:
#对于不可变对象比如str,对str进行操作,他是不变的
a='abc'
a.replace('a','A')
Out[122]:
'Abc'
In [123]:
a
Out[123]:
'abc'
In [ ]:
In [ ]:
In [ ]:
In [ ]:
In [ ]:
In [ ]: