本人因为是大一来学习的,只会一点非常基础的知识,所以本身是准备有了一些知识积累在学习的,但是学长说我们可以先试试入门级别的学习,主要见识一下,所以我们几个就跟着学长一起来学一学。
作业来看的话真的很难,从Day-2开始一度没写完就截止,不过还好之后补上了,但是成绩很是低,这还是在学长指导的情况下。虽然我自己在刚开始学的时候就已经意识到了编程对我来说很难。但是真正接触到了那个层面之后我才发现我真的是还差很多,我现在在学校学的真的知识基础,但是我现在已经感觉到了压力。
这次的学习最令我印象深刻的就是python的函数库,很多我完全想不到的功能都能实现,特别是人脸识别的功能,老师讲他是按照像素点识别的,我都不能想象到底要多大的运算量才能按照像素点遍历图片,而且还能运算的那么快、还有网站信息的爬取,最主要算是能用Beautlfulsoup和requests的函数库(算是会用了吧,我也只会抄。。)。所以说回来,虽然说是面向小白,但是作为小白真的看不懂,太难了,连在最终时间之前弄完作业都很难,想要学会恐怕还要好几年,等基础知识在学一学可能才会看懂。(真的难,也可能是我菜,看着群里大佬聊天,自己都看不懂大佬说的什么)但是我的python之路也算是入门了,虽然跌跌撞撞,但总算上路,最终成不成还是一个变数,虽然我现在感到的压力很大,但是我还是存有一些信心,因为我的数学基础,虽然不能说是佼佼者,但是在我多年的学习中,我一直没有被数学绊倒过,所以我仍存信心,加油吧!
Day-1作业没什么可说的(新手不会高级语法)
只有for循环的嵌套,最菜的方法。。
or i in range(1,10):
for k in range(1,i+1):
if k < i:
print('\t%d*%d=%d' %(k,i,i*k),end = '')
else:
print('\t%d*%d=%d' %(i,k,i*k))
文档搜索我用尽心力写了递归,然后发现,大佬根本不放眼里。。
def findfiles(thispath):
#在这里写下您的查找文件代码吧!
for root,thisdires,files in os.walk(thispath):
if len(thisdires)!=0:
for thisdire in thisdires:
findfiles(thisdire)
for s in files:
if filename in s:
result.append(os.path.join(root,s))
Day-2信息爬取(我现在唯一会用的)
response=requests.get(url=link,headers=headers)
soup=BeautifulSoup(response.text,'lxml')
content=soup.find_all('div',{'class':'summary-pic'})
爬取信息的主体部分,使用的时候加上link网页链接,headers头文件,如果网页结构不一样需要改寻找的信息。
Day-3新手不懂。。找模板
import matplotlib.pyplot as plt
import numpy as np
import json
import matplotlib.font_manager as font_manager
import pandas as pd
#显示matplotlib生成的图形
%matplotlib inline
df = pd.read_json('data/data31557/20200422.json')
#print(df)
grouped=df['name'].groupby(df['zone'])
s = grouped.count()
zone_list = s.index
count_list = s.values
# 设置显示中文
plt.rcParams['font.sans-serif'] = ['SimHei'] # 指定默认字体
plt.figure(figsize=(20,15))
plt.bar(range(len(count_list)), count_list,color='r',tick_label=zone_list,facecolor='#9999ff',edgecolor='white')
# 这里是调节横坐标的倾斜度,rotation是度数,以及设置刻度字体大小
plt.xticks(rotation=45,fontsize=20)
plt.yticks(fontsize=20)
plt.legend()
plt.title('''《青春有你2》参赛选手''',fontsize = 24)
plt.savefig('/home/aistudio/work/result/bar_result02.jpg')
plt.show()
import matplotlib.pyplot as plt
import numpy as np
import json
import matplotlib.font_manager as font_manager
#显示matplotlib生成的图形
%matplotlib inline
with open('data/data31557/20200422.json', 'r', encoding='UTF-8') as file:
json_array = json.loads(file.read())
#绘制小姐姐区域分布柱状图,x轴为地区,y轴为该区域的小姐姐数量
zones = []
for star in json_array:
zone = star['zone']
zones.append(zone)
print(len(zones))
print(zones)
zone_list = []
count_list = []
for zone in zones:
if zone not in zone_list:
count = zones.count(zone)
zone_list.append(zone)
count_list.append(count)
print(zone_list)
print(count_list)
# 设置显示中文
plt.rcParams['font.sans-serif'] = ['SimHei'] # 指定默认字体
plt.figure(figsize=(20,15))
plt.bar(range(len(count_list)), count_list,color='r',tick_label=zone_list,facecolor='#9999ff',edgecolor='white')
# 这里是调节横坐标的倾斜度,rotation是度数,以及设置刻度字体大小
plt.xticks(rotation=45,fontsize=20)
plt.yticks(fontsize=20)
plt.legend()
plt.title('''《青春有你2》参赛选手''',fontsize = 24)
plt.savefig('/home/aistudio/work/result/bar_result.jpg')
plt.show()
import matplotlib.pyplot as plt
import numpy as np
import json
import matplotlib.font_manager as font_manager
#显示matplotlib生成的图形
%matplotlib inline
with open('data/data31557/20200422.json', 'r', encoding='UTF-8') as file:
json_array = json.loads(file.read())
weight_list= []
for star in json_array:
weight = star['weight'].strip('kg')
weight_list.append(weight)
weight_label = ['<=45kg', '45~50kg', '50~55kg', '>55kg']
count_list = [0,0,0,0]
for weight in weight_list:
weight=float(weight)
if weight <= 45:
count_list[0]=count_list[0]+1
continue
if weight>45 and weight<=50:
count_list[1]=count_list[1]+1
continue
if weight > 50 and weight <= 55:
count_list[2]=count_list[2]+1
continue
if weight>55:
count_list[3]=count_list[3]+1
continue
# 设置显示中文
plt.rcParams['font.sans-serif'] = ['SimHei'] # 指定默认字体
plt.figure(figsize=(10,10))
explode = (0.1, 0.1, 0, 0)
plt.pie(x=count_list ,explode=explode, labels=weight_label,autopct='%1.1f%%', shadow=False, startangle=90)
plt.axis('equal')
plt.legend()
plt.title('''《青春有你2》参赛选手''',fontsize = 24)
plt.show()
完全就是模板,新手真的不会。。
Day-4用来爽,代码不用改,弄好图片看他刷屏就好了。
放几张图片吧
Day-5真的是555了QAQ
评论的爬取用Day-2模板可以做到,作业弄过全靠学长
def saveMovieInfoToFile(lastId,arr):
'''
解析json数据,获取评论
参数 lastId:最后一条评论ID arr:存放文本的list
:return: 新的lastId
'''
url = "https://sns-comment.iqiyi.com/v3/comment/get_comments.action?agent_type=118&\agent_version=9.11.5&business_type=17&content_id=15068699100&page=&page_aize=10&types=time&last_id="
url += str(lastId)
responseTxt = getMovieinfo(url)
responseJson = json.loads(responseTxt)
comments = responseJson['data']['comments']
for val in comments:
if 'content' in val.keys():
print(val['content'])
arr.append(val['content'])
lastId = str(val['id'])
return lastId
和Day-2最不同的就是这个函数,需要一个lastid来把评论更多的或取出来。
好了5天靠学长的“学习”就完成了(以后我会不会也成为可靠的学长呢。。)
数学才是内功,其他都好办,只是时间问题。深度学习就是用数学工具结果一般编程方法难以解决的问题。
加油!共同进步!
【下面是我写的一些入门小贴,有空可以fork玩玩(项目列表)】
训练数据太少?过拟合?一文带你领略“数据增长魔法”(上) (https://aistudio.baidu.com/aistudio/projectdetail/408059)
训练数据太少?过拟合?一文带你领略“数据增长魔法”(下) (https://aistudio.baidu.com/aistudio/projectdetail/422256)
一文帮你理解用Paddle训练模型的原理1-手写回归模型 (https://aistudio.baidu.com/aistudio/projectdetail/367090)
一文帮你理解用Paddle训练模型的原理2-权值可视化(VisualDL) (https://aistudio.baidu.com/aistudio/projectdetail/386954)
来AI Studio互粉吧~等你哦~ https://aistudio.baidu.com/aistudio/personalcenter/thirdview/76563
....不要骄傲,你以后也是一枚可靠的学长..