GUI界面
导入turtle as 是给起一个别名
import turtle as t
设置画笔的大小10px
t.pensize(10)
t.color('blue')
画笔移动
t.penup()
t.goto(-260, 0)
t.pd()
列表:
与c语言中的数组很相似, 只不过可以存储不同类型的数据
定义方式[]:
hero_name = ['鲁班七号', '安琪拉', '李白', '刘备']
输出
print(hero_name)
遍历
for hero in hero_name:
print(hero)
字符串
定义形式'' ""
切片 对序列截取一部分的操作,适用于列表
name = 'abcdefg'
name[1]
[起始位置:终止位置:步长] 左闭右开
print(name[1:4]) 输出abc
print(name[0:7:2]) 输出aceg
全切片的时候可以省略初始和终止位置
print(name[::2])
常用方法
去两端空格
name = name.strip()
替换
price = '$999'
price = price.replace('$','')
列表变成字符串的方法join
li = ['a', 'b', 'c', 'd']
a = '_'.join(li)
元组 tuple
元组和列表很像只不过元组不可以修改
定义()
a = ('zhangsan', 'lisi', 'wangwu',1000)
访问
a[i]
修改
a[i] = 'zhaoliu'
关于元组需要注意的是 只有一个元素的元组,不是元组,是元素的类型
b = ('lisi',) 字符型
c = (1000,) 数值型
字典
定义形式{}
info = {'name':'李四', 'age':34, 'addr':'重庆市渝北区'}
字典的访问
info['name']
修改
info['addr'] ='北京市朝阳区'
增加
info['sex'] ='female'
获取字典中所有的键
info.keys()
获取字典中所有的z值
info.values()
获取字典中所有的key-value
info.items()
遍历字典
for k, vin info.items():
print(k, v)
集合:无序,不重复
set1 = {'zhangsan', 'lisi', 222}
遍历
for x in set1:
本地文件读取
python中使用open内置函数进行文件读取
f = open(file='./novel/threekingdom.txt', mode='r', encoding='utf-8')
data = f.read()
f.close()
data = open(file='./novel/threekingdom.txt', mode='r', encoding='utf-8').read()
print(data)
with as 上下文管理器 不用手动关闭流
with open('./novel/threekingdom.txt', 'r', encoding='utf-8') as f:
data = f.read()
print(data)
写入
txt = 'i like python'
with open('python.txt','w', encoding='utf-8') as f:
f.write(txt)
jieba
导入jieba分词
import jieba
三种分词模式
seg ="我来到北京清华大学"
精确模式 精确分词
seg_list = jieba.lcut(seg) 输出: ['我', '来到', '北京', '清华大学']
全模式 找出所有可能的分词结果 冗余性大
seg_list1 = jieba.lcut(seg,cut_all=True) 输出:['我', '来到', '北京', '清华', '清华大学', '华大', '大学']
搜索引擎模式
seg_list2 = jieba.lcut_for_search(seg) 输出:['我', '来到', '北京', '清华', '华大', '大学', '清华大学']
例:
text ='小明硕士毕业于中国科学院计算所,后在日本京都大学深造'
seg_list4 = jieba.lcut(text,cut_all=True)
print(seg_list4) 输出:['小', '明', '硕士', '毕业', '于', '中国', '中国科学院', '科学', '科学院', '学院', '计算', '计算所', '', '', '后', '在', '日本', '日本京都大学', '京都', '京都大学', '大学', '深造']
搜索引擎模式 先执行精确模式,在对其中的长词进行处理
seg_list5 = jieba.lcut_for_search(text)
print(seg_list5) 输出:['小明', '硕士', '毕业', '于', '中国', '科学', '学院', '科学院', '中国科学院', '计算', '计算所', ',', '后', '在', '日本', '京都', '大学', '日本京都大学', '深造']
读取.txt
with open('./novel/threekingdom.txt','r', encoding='utf-8')as f:
words = f.read()
print(len(words)) 字数 55万
words_list = jieba.lcut(words)
print(len(words_list)) 分词后的词语数 35万
print(words_list)