DAY2,第二节课咯,经过了作业的洗礼,感觉。。。。爽。。!
1.eval()
这个是上次blog中没有提到的(原谅我看视频不认真吧),python 2.x和3.x的区别在于2.x的输入是raw_input,3.x的为input,两者的主要区别在于,3..x的input输入的值都会转化为字符串,如果你需要数值型的,则需要手动进行int()的转化,而2.X中的raw_input则是你输入的是什么类型的,输出得到的结果就是什么类型的,所以在3.x中,需要得到相同的输入结果的话,就需要使用eval(),简单来说 raw_input = eval(input())
2.字符的处理
严格意义上来说,python中是不存在单纯意义上的字符的,比如“Zero_zhang”,你输入的可能是这个,但是在python中的存储形式是“Z”,“e”,"r","o","_","z","h","a","n","g"的形式存在的,所以python中的字符都是字符串,下面来看一下对于字符串的一些处理方法
name1 = "ERIC" result = name1.casefold() print(result)
输出的结果:eric
casefold()这个方法就是将输入的字符串中的大写全部转化为小写,然后输入
name2 = "购物商城欢迎您" result= name2.center(20,"*") print(result)
输出的结果:******购物商城欢迎您*******
center()这个方法就是将输入的字符串居中显示,而20表示左右两边的缩进位置加起来为20个字符,*表示使用*来进行空格的填充
name3 = "Zero_zhang" result = name3.endswith("g") print(result)
输出的结果:True
endswith()的方法表示检索字符串的最后一个字符,看是否和给出的值相等,相等的话,输出为True,否则输出False
name4 = "1.\t苹果手机6\t6888\t\t5件" result = name4.expandtabs(5) print(result)
输出结果:1. 苹果手机6 6888 5件
expandtabs()的方法是将输入的字符串中的\t(也就是tab按钮),用空格进行替换,至于空格的数量,则有()中的数字来定义
name5 = "Zero_zhang" result = name5.find("y") print(result)
输出结果:-1
find()的方法是根据给定的字符去查找输入的字符串中,是否有匹配的值,如果有,则会输出该字符的下标位置,如果没有的话,则会输出-1的结果
name5 = "Zero_zhang" result = name5.index("y") print(result)
输出结果:ValueError: substring not found
index()的方法和find是十分类似的,也是根据给点的字符去查找输入字符串中是否有匹配的,如果有,则输出该字符的下标位置,如果没有的话,则直接报错
name6 = "Zero_zhang {0} {1}" result = name6.format("aix","ibm z") print(result)
输出结果:Zero_zhang aix ibm z
format()的方法是格式化字符串,可以通过标记位,将给定的字符添加到标记位上
name7 = "Zero_zhang" result = "_".join(name7) print(result)
输出结果:Z_e_r_o___z_h_a_n_g
join()的方法就是插入,将给定的字符逐一的插入到输入字符中
name8 = "Zero_zhangissuperman" result = name8.partition("is") print(result)
输出结果:('Zero_zhang', 'is', 'superman')
partition()的方法是通过关键字将字符串进行分割,分割后的输出结果为元祖
name9 = "Zero_zhangissuperman" result = name9.replace('n','pp',1) print(result)
输出结果:Zero_zhappgissuperman
replace()的方法就是进行替换,将选定的字符,替换为需要的字符,如果不加数字,则会进行全局的替换,如果加了数字,则会从左到右,按照数字进行替换
name10 ='''aa bb ccc''' result = name10.split('\n') print(result)
输出结果:['aa', 'bb', 'ccc']
split()的方法就是去除,将给定的格式符号进行去除,输出的结果为列表
以上就是字符串的一些简单的方法介绍
3.列表的操作
列表的操作在上一篇中已经做过了介绍,这里就重复几个比较有用的
先说一下列表的定义方式,分为两种
直接通过a=[]的方式进行定义
通过list(( ))的方式来进行定义
两种方式得出的列表,其功能是一模一样滴!
通过dir命令可以看到列表的所有功能
list = [1,2,3,4] print(list)
输出结果:[1, 2, 3, 4]
生成一个列表,然后打印出来,属于列表的最基本的操作
list = [1,2,3,4] list.append(5) print(list)
输出结果:[1, 2, 3, 4, 5]
列表的append方法,在列表的末尾添加一个字符,当列表为空的时候,也可以添加进去!
list = [1,2,3,4] list.extend([6,7,]) print(list)
输出结果:[1, 2, 3, 4, 6, 7]
列表的扩容,也可以理解为2个列表的合并
list = [1,2,3,4] result = list.pop() print(result)
输出结果:[1, 2, 3] 4
列表的删除操作,pop方法默认是删除列表的最后一个,并且会输出被删除的值,如果在pop(5)中加入数字的话,则会删除指定下标位置的字符
list = [1,2,3,4] result = list.remove(1) print(list) print(result)
输出结果:[2, 3, 4] None
列表的第二种删除操作,remove的方法必须要给予数字,为空的话,会直接报错,和pop相比较而言,remove没有返回值
list = [1,2,3,4] list.reverse() print(list)
输出结果:[4, 3, 2, 1]
列表的倒序操作,顾名思义,就是要一个列表的输出值,进行一个倒序的排序
以上就是列表的一些简单的方法介绍
4.字典的操作
先来说一下字典的定义方式
输入的格式为key:value
然后来看一下dict的方法
a = {"k1":"v1","k2":"v2"} for k in a.keys(): print(k)
输出结果:k2 k1
输出字典的key值
a = {"k1":"v1","k2":"v2"} for v in a.values(): print(v)
输出结果:v1 v2
输出字典的value值
a = {"k1":"v1","k2":"v2"} for k,v in a.items(): print(k,v)
输出结果:k2 v2 k1 v1
输出字典的items值
a = {"k1":"v1","k2":"v2","k3":"v3"} seq = ('name', 'age', 'sex') print(a.fromkeys(seq,100)) 输出结果:{'sex': 100, 'name': 100, 'age': 100}
字典的fromkeys()的方法,以序列seq中元素做字典的键,value为字典所有键对应的替换值(或者也可以称为初始值)
a = {"k1":"v1","k2":"v2","k3":"v3"} print(a.get("k1"))
输出结果:v1
字典的get()用法,以给定的key值去字典中寻找对应的value值
a = {"k1":"v1","k2":"v2","k3":"v3"} print(a["k1"])
输出结果:v1
另一种value值的获取方式,和get()的用法一样
a = {"k1":"v1","k2":"v2","k3":"v3"} print(a.pop("k1"))
输出结果:v1
字典的pop()用法,删除给定key值的value值,并且会输出被删除的value值
a = {"k1":"v1","k2":"v2","k3":"v3"} print(a.popitem())
输出结果:('k2', 'v2')
字典的popitem()删除用法,随机!随机!随机!的删除一个item项,所以这个方法在实际环境中没有什么用处
dic_list = {} print(dic_list.setdefault("k1",["a","b"],))
输出结果:['a', 'b']
字典的setdefault()方法,也就是字典的初始化的方法,根据给定的key,value来给字典赋值
以上就是字典的一些简单的方法介绍