400-650-7353
您所在的位置:首頁(yè) > 大學(xué)生就業(yè) > 【實(shí)習(xí)報(bào)告】Python實(shí)訓(xùn)報(bào)告

【實(shí)習(xí)報(bào)告】Python實(shí)訓(xùn)報(bào)告

  • 來(lái)源:優(yōu)就業(yè)
  • 2018-11-08 15:59:51
  • 閱讀()
  • 分享
  • 手機(jī)端入口

#判斷兩次類(lèi)聚中心點(diǎn)坐標(biāo)

def random_kid_is_same(x_randomz_first,y_random_first,y_random_second,x_randomz_second):

if x_randomz_first==x_randomz_second and y_random_first==y_random_second :

a= False

else:

a=True

return a

a=random_kid_is_same(x_randomz_first,y_random_first,y_random_second,x_randomz_second)

print(a)

while a:

for i in range(0, len(x)):

for j in range(0, 3):

dic.append(math.sqrt((x[i] - x_randomz_first[j]) * (x[i] - x_randomz_first[j]) + (y[i] - y_random_first[j]) * (

y[i] - y_random_first[j])))#求距離

if dic[2] < dic[0] and dic[2] < dic[1]: # 2號(hào)距離最小

result_x_num2.append(x[i])

result_y_num2.append(y[i])

dic = []

elif dic[0] < dic[1] and dic[0] < dic[2]: # 0號(hào)距離最小

result_x_num0.append(x[i])

result_y_num0.append(y[i])

dic = []

elif dic[1] < dic[0] and dic[1] < dic[2]: # 1號(hào)最小

result_x_num1.append(x[i])

result_y_num1.append(y[i])

dic = []

for i_1 in range (0,len(result_x_num0)):#取0號(hào)類(lèi)別里的數(shù)據(jù)

result_x+=result_x_num0[i_1]

#print(result_x_num0)

x_randomz_second.append(result_x/len(result_x_num0))

for i_3 in range (0,len(result_y_num0)):

result_y+=result_y_num0[i_3]

y_random_second.append(result_x/len(result_x_num0))

for i_2 in range (0,len(result_x_num1)):#取1號(hào)類(lèi)別里的數(shù)據(jù)

result_x+=result_x_num1[i_2]

print(len(result_x_num1))

x_randomz_second.append(result_x /(len(result_x_num1)))

for i_4 in range (0,len(result_y_num1)):

result_y+=result_y_num1[i_4]

y_random_second.append(result_y/len(result_y_num1))

for i_5 in range(0, len(result_x_num2)):#取2號(hào)類(lèi)別里的數(shù)據(jù)

result_x += result_x_num2[i_5]

x_randomz_second.append(result_x / len(result_x_num2))

for i_6 in range(0, len(result_y_num2)):

result_y += result_y_num2[i_6]

y_random_second.append(result_y / len(result_y_num2))

a=random_kid_is_same(x_randomz_first,y_random_first,y_random_second,x_randomz_second)

x_randomz_first=x_randomz_second

y_random_first=y_random_second

plt.scatter(result_x_num0,result_y_num0,color='black')

plt.scatter(result_x_num1,result_y_num1,color='red')

plt.scatter(result_x_num2,result_y_num2,color='green')

plt.legend(['第一類(lèi)','第二類(lèi)','第三類(lèi)'])

plt.savefig('d:/home2.png')

plt.show()

Knn算法:

import matplotlib.pyplot as plt

import numpy as np

import random

from numpy import *

import math

#編程邏輯:

# 將原始的數(shù)據(jù)所有的屬性分開(kāi)存在數(shù)組中,順序一致,將要配置的電影的信息都存在一個(gè)數(shù)組里,

# 用歐式公式求出相似度,將電影名稱(chēng)和相似度存放在字典里,對(duì)字典進(jìn)行排序(從小到大),

# 然后按照排序出的結(jié)果根據(jù)電影名稱(chēng)查找每個(gè)電影對(duì)應(yīng)的類(lèi)型名稱(chēng),將所有類(lèi)型名稱(chēng)存在一個(gè)數(shù)組里

# 然后查找每種類(lèi)型名稱(chēng)出現(xiàn)的次數(shù),將類(lèi)型名稱(chēng)和次數(shù)存放在字典里,在對(duì)字典進(jìn)行排序(從大到小)

# 取出第一個(gè)數(shù)據(jù)的電影類(lèi)型為要所求的電影類(lèi)型,將此類(lèi)型添加到要求的電影信息數(shù)組中

#數(shù)據(jù)準(zhǔn)備

fill_name=['寶貝當(dāng)家','美人魚(yú)','澳門(mén)風(fēng)云3','功夫熊貓3','諜影重重','葉問(wèn)3','我的特工爺爺','奔愛(ài)','夜孔雀','代理情人','新步步驚心','倫敦淪陷']

funny_lens=[45,21,54,39,5,3,6,7,9,9,8,2]

hug_lens=[2,17,9,0,2,2,4,46,39,38,34,3]

fighting_lens=[9,5,11,31,57,65,21,4,8,2,17,55]

fill_type=['喜劇片','喜劇片','喜劇片','喜劇片','動(dòng)作片','動(dòng)作片','動(dòng)作片','愛(ài)情片','愛(ài)情片','愛(ài)情片','愛(ài)情片','動(dòng)作片']

fill_need_name=['唐人街探案',23,3,17]

#參數(shù)規(guī)定

k_numebr=4

result={}

dict={}

dict_result={}

dic=0

type_name=[]

count_fight=0

count1_fun=0

count1_love=0

#求出要求的電影的屬性和樣本點(diǎn)求距離

for i in range(0,len(fill_name)):

dic= math.sqrt((fill_need_name[1]-funny_lens[i])**2+(fill_need_name[2]-hug_lens[i])**2+(fill_need_name[3]-fighting_lens[i])**2)

result[fill_name[i]]=dic

#將數(shù)列排序 按value的值從小到大進(jìn)行排序 給dict 此時(shí)dict的類(lèi)型為list- list里的每一個(gè)元素為元組類(lèi)型

dict= sorted(result.items(), key=lambda d:d[1], reverse = False)

print("相似度排序:-----------------")

for i in range (0,k_numebr):#按照要求k值進(jìn)行截取

a=list(dict[i])#dict為list型 但是list中每一個(gè)元素為元組型,需要再轉(zhuǎn)換為list型

print(a)#打印出按從小帶大的排序取前k個(gè)

#按照電影名稱(chēng)查找每個(gè)電影的類(lèi)型

for j in range(0,len(fill_name)):

if fill_name[j]==a[0]:

type_name.append(fill_type[j])

#遍歷出來(lái)的所有電影類(lèi)型名稱(chēng) 查找每個(gè)電影的類(lèi)型出現(xiàn)的次數(shù) 存放到字典里

for i in range (0,len(type_name)):

if type_name[i]=='動(dòng)作片':

count_fight+=1

elif type_name[i]=='喜劇片':

count1_fun+=1

elif type_name[i]=='愛(ài)情片':

count1_love+=1

dict_result['動(dòng)作片']=count_fight

dict_result['喜劇片']=count1_fun

#print(type_name)

print("相似度前四個(gè)所對(duì)應(yīng)的電影類(lèi)型出現(xiàn)的次數(shù)-----------")

print(dict_result)

#將存放電影類(lèi)型的字典按照出現(xiàn)次數(shù)的大小從大到小排列 此時(shí)dict_2為list型,list中每一個(gè)元素為元組型

dict_2= sorted(dict_result.items(), key=lambda d:d[1], reverse = True)

b=list(dict_2[0])#把list中第一個(gè)元組轉(zhuǎn)換成數(shù)組 再取第一個(gè)數(shù)據(jù)為 所需要的類(lèi)型

#print(b[0])

#將 找到的電影類(lèi)型添加到原來(lái)電影信息的數(shù)組中

fill_need_name.append(b[0])

print("所求結(jié)果:-----------------")

print(fill_need_name)

5)python面向程序和爬蟲(chóng)

Python可以面向過(guò)程編程也可以面向?qū)ο缶幊,爬蟲(chóng)是從網(wǎng)頁(yè)下載指定的格式的內(nèi)容

class Human():

def __init__(self,name,age):

self._name=name

self._age=age

def talk(self):

print("Human can talk")

def display(self):

print(self._name+"-"+str(self._age))

def __str__(self):

return self._name+"-"+str(self._age)

def __repr__(self):

return self.__str__()

def getAge(self):

return self._age

def add_human(name,age):

s=Human(name,age)

return s

name='小剛'

age=22

a=add_human(name,age)

print(a)

import urllib.request

import re

def get_html(url):

page=urllib.request.urlopen(url)

html=page.read()

return html

reg= r'src=" (.+?\.jpg)" .width '

reg_img=re.compile(reg)#編譯

html=get_html('http://tieba.baidu.com/p/1753935195')

html=html.decode('utf-8')

imglist=reg_img.findall(html)

三、心得總結(jié)

在大數(shù)據(jù)和云計(jì)算快速的發(fā)展的今天,python以語(yǔ)法簡(jiǎn)單功能強(qiáng)大成為學(xué)習(xí)大數(shù)據(jù)的一個(gè)理想的編程語(yǔ)言,在用python語(yǔ)言編程的時(shí)候發(fā)現(xiàn)跟其他語(yǔ)言有著明顯的區(qū)別,python簡(jiǎn)化在其他語(yǔ)言中相對(duì)復(fù)雜繁瑣的語(yǔ)法結(jié)構(gòu),但是在集成開(kāi)發(fā)軟件中,python需要按照嚴(yán)格的格式編程,如java是以分號(hào)作為程序結(jié)束的標(biāo)記,并不要求在編程中需要有格式要求,然后python集成工具中寫(xiě)程序需要按照格式編程,這點(diǎn)在剛開(kāi)始編程是會(huì)找不清每個(gè)部分所對(duì)應(yīng)的級(jí)別,會(huì)造成很多編程錯(cuò)誤,而當(dāng)熟悉這種格式要求時(shí),發(fā)現(xiàn)python這種簡(jiǎn)潔的要求更加簡(jiǎn)化的編程過(guò)程,編程速度也會(huì)有很大提高,邏輯也會(huì)更加清晰

Python中的變量并不需要提前設(shè)定變量類(lèi)型,系統(tǒng)是自動(dòng)添加數(shù)據(jù)類(lèi)型,所以在編程中,要把握準(zhǔn)確很大變量的類(lèi)型,尤其在和元組,數(shù)組,字典相互使用的時(shí)候要注意類(lèi)型的變化

個(gè)人認(rèn)為在python編程中最重要的一步是在進(jìn)行編程時(shí)想明白每個(gè)數(shù)組是用什么數(shù)據(jù)類(lèi)型進(jìn)行存放,當(dāng)確定好數(shù)據(jù)類(lèi)型后,python以它簡(jiǎn)單強(qiáng)大的語(yǔ)法,會(huì)使編程變得更加效率和簡(jiǎn)單!

相關(guān)推薦

【Python培訓(xùn) 】從小白到大咖 打造Python精英人才

【Python入門(mén)免費(fèi)課程】引領(lǐng)編程開(kāi)發(fā)新趨勢(shì)

文章“【實(shí)習(xí)報(bào)告】Python實(shí)訓(xùn)報(bào)告”已幫助

>>本文地址:http://hqfphsz.com/dxs/2018/45463.html

THE END  

聲明:本站稿件版權(quán)均屬中公教育優(yōu)就業(yè)所有,未經(jīng)許可不得擅自轉(zhuǎn)載。

1 您的年齡

2 您的學(xué)歷

3 您更想做哪個(gè)方向的工作?

獲取測(cè)試結(jié)果
  • 大前端大前端
  • 大數(shù)據(jù)大數(shù)據(jù)
  • 互聯(lián)網(wǎng)營(yíng)銷(xiāo)互聯(lián)網(wǎng)營(yíng)銷(xiāo)
  • JavaJava
  • Linux云計(jì)算Linux
  • Python+人工智能Python
  • 嵌入式物聯(lián)網(wǎng)嵌入式
  • 全域電商運(yùn)營(yíng)全域電商運(yùn)營(yíng)
  • 軟件測(cè)試軟件測(cè)試
  • 室內(nèi)設(shè)計(jì)室內(nèi)設(shè)計(jì)
  • 平面設(shè)計(jì)平面設(shè)計(jì)
  • 電商設(shè)計(jì)電商設(shè)計(jì)
  • 網(wǎng)頁(yè)設(shè)計(jì)網(wǎng)頁(yè)設(shè)計(jì)
  • 全鏈路UI/UE設(shè)計(jì)UI設(shè)計(jì)
  • VR/AR游戲開(kāi)發(fā)VR/AR
  • 網(wǎng)絡(luò)安全網(wǎng)絡(luò)安全
  • 新媒體與短視頻運(yùn)營(yíng)新媒體
  • 直播帶貨直播帶貨
  • 智能機(jī)器人軟件開(kāi)發(fā)智能機(jī)器人
 

快速通道fast track

近期開(kāi)班時(shí)間TIME