Python学习第二天

Python标准库中的GUI界面 --> turtle

  • turtle的简单使用:导入turtle
  • import turtle as t
import turtle as t
# 设置画笔的大小10px,颜色blue
t.pensize(10)
t.color('blue')
# 绘制NEUSOFT
# 水平左移
# 抬笔移动,不绘制
t.penup()
# t.pu()
# 画笔移动到(x,y)位置(坐标)
t.goto(-260, 0)
t.pendown()
# t.pd()

# 让gui界面一直显示,所有执行的代码要写在此函数之前
t.done()

常用的数据类型

1. 列表
  • 列表的访问
print(hero[1])
  • 添加元素
# 添加元素 append
hero_name.append('后羿')
print('添加后的列表',hero_name)
  • 修改元素
# 修改
hero_name[1]=1000
print('修改后的列表',hero_name)
  • 删除元素
# 删除
del hero_name[1]
print('删除后的列表',hero_name)
  • 练习
#创建[1,2,3...10]这样的一个数字列表
a=[]
for i in range(1,11):
    a.append(i)
print(a)
  • 列表的排序
    sort() 函数用于对原列表进行排序,如果指定参数,则使用比较函数指定的比较函数。

li=[]
for i in range(10):
    li.append(i)
print(li)
from random import shuffle
shuffle(li)
print('随机打乱的列表',li)
#按照降序排列reverse=True
li.sort(reverse=True)
print('排序后的列表',li)
  • 自定义函数排序
stu_info = [
    {"name":'zhangsan', "age":18},
    {"name":'lisi', "age":30},
    {"name":'wangwu', "age":99},
    {"name":'tiaqi', "age":3},
]
print('排列前',stu_info)
#自定义函数
#def 函数名(参数):
#   函数体
def soft_by_age(x):
    return x['age']
#key=函数名  ---按照什么进行排序
#根据年龄大小进行正序排序
stu_info.sort(key=soft_by_age,reverse=True)
print('排序后',stu_info)
name_info_list = [
    ('张三',4500),
    ('李四',9900),
    ('王五',2000),
    ('赵六',5500),
]
#返回值是参数[索引]
def soft_by_grade(i):
    return i[1]
2. 元组
  • 关于元组需要注意的是 只有一个元素的元组需要加上,才能是元组
b = ('lisi',) #是不是元组
c = (1000,) #是不是元组
print(type(b))
print(type(c))
3. 字典
  • 字典 dict java中的HashMap
  • key-value 数据结构
  • 定义形式{}
    info={'name':'李四','age':34,'addr':'重庆市渝北区'}
    print(len(info))
    print(info)
  • 字典的访问
print(info['name'])
  • 修改
info['addr']='北京朝阳'
print('修改后的字典',info)
  • 增加
info['sex']='female'
print('增加后字典',info)
  • 获取字典中所有的键
print(info.keys())
  • 获取字典中所有的值
print(info.values())
  • 获取字典中所有的key-value
print(info.items())
  • 列表转换成字典
d = [('name', '李四'), ('age', 34), ('addr', '北京市朝阳区'), ('sex', 'female')]
d1 = dict(d)
print(d1)
  • 遍历字典
for k,v in info.items():
    print(k,v)
4. 集合
  • 集合 set
  • 无序、不重复、输出顺序不保证是输入顺序
  • 集合不支持索引查找
set1={'zhangsan','lisi',222}
print(type(set1))
#遍历
for x in set1:
    print(x)

函数定义

  • def 函数名(参数):
    函数体
def say_hello(name):
    print('hello, {}'.format(name))
say_hello('重庆师范')

文件读取

  • 本地文件读取
  • 使用open内置函数进行文件读取
f= open(file='./novel/threekingdom.txt',mode='r',encoding='utf-8')
data=f.read()
f.close()
print(data)
  • 使用with as上下文管理器,不用手动关闭流
with open('./novel/threekingdom.txt',mode='r',encoding='utf-8') as f:
    data=f.read()
    print(data)
  • 写入
#写入文本文件
txt='i like python'
with open('python.txt',mode='w',encoding='utf-8') as f:
    f.write(txt)

#写入H5文件
text = """


    
    Title


重庆师范欢迎你

""" print(text) with open('chongqingshifan.html','w', encoding='utf-8') as f: f.write(text)

分词

  • 导入jieba分词:import jieba
  • 三种分词模式
  1. 精确模式 精确分词
seg_list=jieba.lcut(seg)
print(seg_list)
  1. 全模式 找出所有可能的分词结果 冗余性大
seg_list1=jieba.lcut(seg,cut_all=True)
print(seg_list1)

seg_list4=jieba.lcut(text,cut_all=True)
print(seg_list4)
  1. 搜索引擎模式 先执行精确模式,在对其中的长词进行处理
seg_list2=jieba.lcut_for_search(seg)
print(seg_list2)

seg_list5=jieba.lcut_for_search(text)
print(seg_list5)

你可能感兴趣的:(Python学习第二天)