學(xué)習(xí)Python的第二天

一、turtle的簡單使用(Python標(biāo)準(zhǔn)庫中的GUI界面)

1、導(dǎo)入turtle庫

import turtle as t  #as t為別名

2、對畫筆的操作

#設(shè)置畫筆大小 10px,顏色
t.pensize(10)
t.color('pink')
#抬筆(為了不留下移動(dòng)痕跡)
t.penup()
#水平左移goto(x,y)
t.goto(-260,0)
#放筆
t.pd()
#向前畫
t.forward(80)
#繪制圓圈(半徑,角度),角度默認(rèn)360
t.circle(40)
#簡寫
t.fd(100)
t.lt(145)
t.fd(80)

二、常用數(shù)據(jù)類型

1、列表

優(yōu)點(diǎn):靈活 ,缺點(diǎn): 效率低

#列表的聲明 列表名=[]
number=['yi','er','san','si']

#遍歷列表
for num in number:
    print(num)

#列表的訪問 列表名[索引]
print(number[2])

#添加元素 append
number.append('wu')
print('添加后的列表',number)

#修改列表
number[1]='liu'
print('修改后的列表',number)

#刪除元素
del number[1]
print('刪除后的列表',number)

1.2、列表的排序

from random import shuffle
li = []
for i in range(10):
    li.append(i)
print(li)
#打亂列表
shuffle(li)
print('隨機(jī)打亂的列表', li)
#排序(reverse=True反向排序)
li.sort(reverse=True)
print('排序后的列表', li)
stu_info = [
    {"name":'zs', "age":18},
    {"name":'ls', "age":32},
    {"name":'ww', "age":9},
    {"name":'ti', "age":3},

]
print('排序前', stu_info)

# def 函數(shù)名(參數(shù)):
#     函數(shù)體
def sort_by_age(x):
    return x['age']

# 根據(jù)年齡大小進(jìn)行正序排序
stu_info.sort(key=sort_by_age, reverse=True)
print('排序后', stu_info)
#根據(jù)后面的數(shù)字排序
name_info_list = [
    ('張三',4500),
    ('李四',9900),
    ('王五',2000),
    ('趙六',5500),
]

def sort_by_value(x):
    return x[1]
# 根據(jù)元組第二個(gè)元素進(jìn)行正序排序
name_info_list.sort(key=sort_by_value)
print('排序后', name_info_list)

2、字符串

定義形式 '' ""

2.1、 切片 對序列截取一部分的操作,適用于列表

name = 'abcdefg'
# [起始位置:終止位置:步長] 左閉右開
#cd
print(name[2:4])
# a c e g
print(name[0:7:2])
# 全切片的時(shí)候可以省略初始和終止位置
 print(name[::2])

2.2、去兩端空格 strip()

name = '    abcdefg     '
#  查看序列內(nèi)元素的個(gè)數(shù)  len()
print(len(name))
name = name.strip()
print('去空格之后', len(name))

2.3、替換 replace

# price = '999'
# price = price.replace('9','1')
# print(price)

2.4、列表變成字符串的方法 join

#輸出a_b_c_d
li = ['a', 'b', 'c', 'd']
a = '_'.join(li)
print(a)
print(type(a))

3、元組

元組 tuple 元組和列表很像只不過元組不可以修改

3.1、定義 ()

 a = ('zs', 'ls', 'ww',1000)
 print(a)
 print(type(a))

3.2、訪問

# 訪問
print(a[1])

3.3、修改

a[3] = 'zl'

3.4、注意

# #關(guān)于元組需要注意的是 只有一個(gè)元素的元組
b = ('lisi',) #是元組
c = (1000,) #是元組

4、字典 dict

key-value數(shù)據(jù)結(jié)構(gòu)

4.1、定義形式 {}

info = {'name':'李四', 'age':34, 'addr':'重慶'}
print(len(info))
print(info)

4.2、字典的訪問

print(info['name'])

4.3、修改

info['addr'] = '北京'
print('修改后字典',info)

4.4、增加

info['sex'] = 'female'
print('增加后字典',info)

4.5、獲取字典中所有的鍵

print(info.keys())

4.6、 獲取字典中所有的z值

print(info.values())

4.7、獲取字典中所有的key-value

print(info.items())

4.8、 遍歷字典

for k, v in info.items():
    print(k, v)

5、 集合

無序,不重復(fù)

set1 = {'zs', 'ls', 222}

5.1、 遍歷

for x in set1:
    print(x)

6、本地文件的讀寫

6.1、讀取本地文件

#java讀取本地文件
# f=open(file='./threekingdom.txt',mode='r',encoding='utf-8')
# data=f.read()
# #需要關(guān)閉
# f.close()
# print(data)
#with as 上下文管理器 不需要關(guān)閉
with open('./threekingdom.txt','r',encoding='utf-8') as w:
    data=w.read()
    print(data)

6.2寫入

txt = 'python'
with open('python.txt','w', encoding='utf-8') as f:
    f.write(txt)

7、jieba分詞庫

7.1、安裝

pycharm設(shè)置 project:項(xiàng)目名 中的project interpreter中搜索jieba點(diǎn)擊安裝

7.2、三種分詞模式

# 導(dǎo)入jieba分詞
import jieba

seg = "我想養(yǎng)只小貓咪"
#  精確模式  精確分詞
#輸出:['我想養(yǎng)', '只', '小貓咪']
seg_list = jieba.lcut(seg)
 print(seg_list)

#  全模式  找出所有可能的分詞結(jié)果    冗余性大
#輸出:['我', '想', '養(yǎng)', '只', '小貓', '小貓咪', '貓咪']
 seg_list1 = jieba.lcut(seg,cut_all=True)
 print(seg_list1)

#  搜索引擎模式
#輸出:['我想養(yǎng)', '只', '小貓', '貓咪', '小貓咪']
seg_list2 = jieba.lcut_for_search(seg)
print(seg_list2)

8、繪制詞云

8.1、wordcloud庫

# 繪制詞云1——英文
#text是想變成詞云的內(nèi)容
from wordcloud import WordCloud
text = 'xxx'
wc = WordCloud().generate(text)
wc.to_file('name.png')

8.2、制定圖片形狀的詞云還需用到imageio庫(中文詞云)

from wordcloud import WordCloud
import jieba
import imageio

#指定圖片
mask = imageio.imread('./china.jpg')

with open('./threekingdom.txt','r', encoding='utf-8') as f:
    sanguo = f.read()
    # 先分詞
    sanguo_list = jieba.lcut(sanguo)
    print(sanguo_list)

    # 將words_list轉(zhuǎn)化成字符串
    words = " ".join(sanguo_list)
    print(words)

    # WordCloud()里面設(shè)置參數(shù)
    wc = WordCloud(
        font_path='msyh.ttc',#字體
        background_color='white',
        width=800,
        height=600,
        mask=mask
    ).generate(words)
    wc.to_file('三國詞云.png')
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡書系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容