Python数据类型结构

对于CSDN中的代码,选择“复制代码”,然后在CMD中打开,选择Ctrl + V,即可直接运行查看结果 。
程序,处理的全部是数据.
数据类型结构 字符串
设定映射关系进行转 换 。
transTab=str.maketrans("0123456789","零壹贰叁肆伍陆柒捌玖")print("879".translate(transTab))
行切分,形成行的list 。将字符串从分行位置 处切分形成list 。分行位置包括但不限于: \n、\r\n、\v、\f等
print("蒹葭苍苍,\n白露为霜 。\n所谓伊人,\n在水一方 。".splitlines())
切分strO所代表的字符串
print("大江东去,浪淘尽,千古风流人物".partition(","))
列表列表中的切片
列表最重要的是切片 。下面这段代码,是提取电脑文件夹中的xls文件名称,并将其整齐化 。
写如下代码:
import osimport openpyxlos.chdir("E:\scoretest")subList=os.listdir(os.getcwd())for isen in subList:#先从文件中取中学的名字 。name=isen.split("中")aSen=name[0]bSen=aSen+"中"if bSen[-3:]=="高级中":school=bSen+"学"elif bSen[-3:]=="高中学":school=bSen[:-1]elif bSen[-3]=="第":school=bSen+"学"else:school=bSenprint(school)
这里运用到了列表中的切片 。[ ]是 左闭右开 。举例如下:
mylist=[1,3,4,5]print(mylist[0:2])#[1, 3]
通过列表生成ID号码
myList=["002020072"+str(i).rjust(3,"0") for i in range(1,23)]for i in myList:print(i)
元组
元组不可改 。
符号表示:( )
#一定搞清楚,元组不可改,在列表中的数个元组,改的是列表中的元素 。#字典,couple,都是新的英文单词而已,知道存在的基本原理和道理 。#把python得到的成绩txt文本导入到Excel中,可以做表格 。很方便和神奇啊 。list1=[('楔', 0), ('子', 2967), ('张', 1455), ('天', 1954), ('师', 1132), ('祈', 19), ('禳', 0)]for i in list1:print("{},{}".format(i[0],i[1]),end=" ")
集合
符号表示:{ }。空的 集合用 () 。
集合的基本操作
#set用于高速的增删改查 。但是相应的,他的空间就需要大一些 。
set()#可以得到汉字的集合 。myStr="红军不怕远征难,万水千山只等闲 。"#集合最重要的特征就是没有重复 。他会变成一个一个的 。mySet=set(myStr)print(mySet)yourSet={"红军不怕远征难,万水千山只等闲 。"}yourSet.add("apple") #集合中用add而不是用append#set不保证你的顺序 。他的最重要特点就是不保证序,查找的速度相当快 。list量大的时候,查找的速度比较慢 。set=()#空的集合用括号,而不是花括号 。单独的花括号有别的用途 。heLike={'ro','la',"so"}#set用于高速的增删改查 。但是相应的,他的空间就需要大一些 。集合函数的掌握得多多实践 。差集,交集,子集等需要实现 。
#集合是无序不重复的元素的集合 。
#集合的元素没法更改 。只有改成list才能够改 。
#取的键的集合#注意,虽然都用了花括号,字典和集合不同 。字典有映射关系 。#集合是无序不重复的元素的集合 。set1={('汪', 3), ('盛', 155), ('驸', 40), }set2={('烦', 166), ('磷', 1), ('宁', 183), ('蛟', 1), ('欹', 2), ('钝', 3), ('厦', 22), ('鳏', 2), ('方', 1132), ('尸', 43), ('哀', 37)}#集合的元素没法更改 。只有改成list才能够改 。list1=list(set1)for i in list1:i=list(i)print(list1)##??此处行不通,不能将集合中的元素()转为列表[ ]print("OK")a=('烦', 166)set1.add(a)print(set1)#添加,只能是单个元素 。a=[('茅', 15), ('狼', 115), ('服', 220), ('拚', 24), ('族', 13)]set1.update(a)print(set1)#添加,update多个元素b=('宁', 183)set2.remove(b)#删除print(set2)print(set1,set2)#单纯罗列两个集合print(set1|set2)#求并集print(set1.union(set2))print(set2&set1)#求交集print(set1.intersection(set2))print(set1-set2)#求差集''''....(后面部分 。名著-词频统计)Set1 = set(list1)#把列表变成了集合 。#print(Set1)return Set1,dic1,list1#return返回值是和外界沟通的,调用函数后,再定义一个值把函数中的值接着 。同时return可以返回多个函数值 。data=http://www.kingceram.com/post/TXT(txt1)##!!!!!!!set1=data[0]dic1=data[1]list1=data[2]data=TXT(txt2)set2=data[0]dic2=data[1]list2=data[2]#inter=charSet1.intersection(charSet2)#union=charSet1.union(charSet2)#字相等,出现次数不一致,在交集中仍然存在 。所以此路不同 。#set1zero=charSet1-inter#某个字在其中一部小说出现,但在另外一部小说不出现,没有出现的小说记为 0得到的集合 。#set2zero=charSet2-inter#print(len(set1zero))listZero=[]for i in set1zero:listZero.append(i[0])print(listZero)#print("并集",union)'''#myFile.close()