Windows下安装Anaconda3并使用Jupyter进行基础练习

前言

本篇博客主要是在windows下的Anaconda环境下练习创建虚拟环境,在虚拟环境下安装 jupyter 和 numpy,并运行jupyter,完成numpy的不少于10道的基础练习,熟悉矩阵运算。学习python基础知识,用Jupyter完成numpy、pandas、matplotlib三个库的例题,了解“图灵测试”。

一、Jupyter Notebook安装

1.1安装前提

安装Jupyter Notebook的前提是需要安装了Python(3.3版本及以上,或2.7版本)。

1.2使用Anaconda安装

我是通过安装Anaconda来解决Jupyter Notebook的安装问题,因为Anaconda已经自动为你安装了Jupter Notebook及其他工具,还有python中超过180个科学包及其依赖项。十分方便。详细安装步骤见:Anaconda介绍、安装及使用教程
安装完成后即可打开Jupyter Notebook,会自动弹出网页,只需要点击Python3即可开始练习。
在这里插入图片描述

二、练习

2.1、numpy的10道基础练习

2.1.1创建一个长度为10的一维全为0的ndarray对象,然后让第5个元素等于1

在这里插入图片描述

2.1.2创建一个元素为从10到49的ndarray对象

在这里插入图片描述

2.1.3将第2题的所有元素位置反转

在这里插入图片描述

2.1.4使用np.random.random创建一个10*10的ndarray对象,并打印出最大最小元素

在这里插入图片描述

2.1.5创建一个10*10的ndarray对象,且矩阵边界全为1,里面全为0

在这里插入图片描述

2.1.6创建一个每一行都是从0到4的5*5矩阵

在这里插入图片描述

2.1.7创建一个范围在(0,1)之间的长度为12的等差数列

在这里插入图片描述

2.1.8创建一个长度为10的随机数组并排序

在这里插入图片描述

2.1.9创建一个长度为10的随机数组并将最大值替换为-100

在这里插入图片描述

2.1.10如何根据第3列来对一个5*5矩阵排序

在这里插入图片描述

2.2、python复习

2.2.1定义斐波那契数列推荐事件

代码:

import random
 
def fin_loop(n):
    listNum = []
    a,b = 0,1
    for i in range(n):
        a,b = b,a+b
        listNum.append(a)
    return listNum
 
if __name__ == "__main__":
    listPlan = ['吃零食','学习','学习','学习','看电影','学习','旅游','睡觉','学习']
    listNum = fin_loop(6)
    varIdx = random.randint(0,5)
    varRandom = listNum[varIdx]
    print("今日计划:",listPlan[varRandom])

效果
在这里插入图片描述

2.2.2数字类型

代码:

i=3
print(id(i))
i+=1
print(id(i))

效果:
在这里插入图片描述
修改变量值后,地址值不同。

2.2.3字符串的访问(栅栏式)

代码:

str='Picture'
print(str[1:3])
print(str[-3:-1])
print(str[3:-1])
print(str[-6:7])
print(str[2:])
print(str*2)
print(str+"TEST")

效果:
在这里插入图片描述

2.2.4字符串的赋值

代码:

word='Python'
print(word[0],word[5])
print(word[-1],word[-6])
word[0]='Q'

效果
在这里插入图片描述

2.2.5List(列表)类型的访问

代码:

list=['a',56,1.13,'HelloWorld',[7,8,9]]
print(list)
print(list[4])
print(list[-2:5])
print(list[2:])

效果:
在这里插入图片描述

2.2.6列表元素的修改

代码:

a=[1,2,3,4,5,6]
a[0]=9
print(a)
a.append(7)
print(a)
a[2:5]=[]
print(a)
a.pop(2)
print(a)

效果:
在这里插入图片描述

2.2.7Tuple(元组)访问

代码

tuple=('Spiderman',2017,33.4,'Homecoming',14)
tinytuple=(16,'Marvel')
print(tuple)
print(tuple[0])
print(tuple[3:4])
print(tuple+tinytuple)

效果:
在这里插入图片描述

2.2.8Tuple(元组)修改

代码:

tuple=([16,'Marvel'],'Spiderman',2017,33.4,'Homecoming',14)
print(tuple[0])
tuple[0][0]='Marvel'
tuple[0][1]='16'
print(tuple)

效果:
在这里插入图片描述

2.2.9字典的使用

代码:

# 字典基本操作
dict = {
    
    'Name':'jiangjiang','Class':'人工智能与机器学习','Age':10}
# 字典的访问
print("Name:",dict['Name'])
print(dict)
# 添加 add
dict['Gender'] = 'male'
print(dict)
# 修改 update
dict.update({
    
    "No":"001"})
dict['Age'] ={
    
    8,9,10}
print(dict)
# 也可以使用 update 方法添加/修改多个数据
dict.update({
    
    'Gender':'Man','Id':'001'})
print(dict)
# 删除元素
del dict['Gender']
print(dict)
dict.clear()
print(dict)

效果:
在这里插入图片描述

2.2.10Set(集合)类型

代码:

# 集合基本操作
# 创建集合
var = set()
print(var,type(var))
var = {
    
    'LiLei','HanMeiMei','ZhangHua','LiLei','LiLei'}
print(var,type(var))     # 从输出中可以看出,集合中没有重复元素,与数学集合一致
# 集合成员检测
result = 'LiLei' in var
print(result)
result = 'jiangjiang' in var
print(result)
# 增删改查
var.add('jiangjiang')
print(var)
var.update('pl')        # 该方法首选拆分元素,然后一次添加
print(var)
var.remove('LiLei')     # 这里会删除所有一致元素
print(var)
# 集合的遍历
for item in var:       # 方法1
    print(item)
for item in enumerate(var): # 方法2
    print(item)
# 交集、并集、差集
var1 = set()
var1 = {
    
    'jiangjiang','002','003'}
jiaoji = var&var1      # 交集
print(jiaoji)
bingji = var|var1      # 并集
print(bingji)
chaji = var-var1       # 差集
print(chaji)

效果
在这里插入图片描述

2.3pandas、matplotlib库例题

2.3.1为一个地理位置数据创建Series对象

代码:

import pandas as pd
print('-------  列表创建Series  --------')
s1=pd.Series([1,1,1,1,1])
print(s1)
print('-------  字典创建Series  --------')
s2=pd.Series({
    
    'Longitude':39,'Latitude':116,'Temperature':23})
print('First value in s2:',s2['Longitude'])
print('------- 用序列作Series索引 --------')
s3=pd.Series([3.4,0.8,2.1,0.3,1.5],range(5,10))
print('First value in s3:',s3[5])

效果:
在这里插入图片描述

2.3.2DataFrame对象

代码:

import pandas as pd
dict1={
    
    'col':[1,2,5,7],'col2':['a','b','c','d']}
df=pd.DataFrame(dict1)
df

效果:
在这里插入图片描述

2.3.3Pandas求方差

代码:

import numpy as np
import pandas as pd
a=np.arange(0,60,5)
a=a.reshape(3,4)
df=pd.DataFrame(a)
print(df)
print('-------------------')
print(df.std())

效果:
在这里插入图片描述

2.3.4绘制简单的plot表格

代码:

import matplotlib.pyplot as plt
fig=plt.figure()
ax1=fig.add_subplot(2,2,1)
ax2=fig.add_subplot(2,2,2)

效果:
在这里插入图片描述

2.3.5绘制多条简单直线

代码:

import matplotlib.pyplot as plt
import numpy as np
a=np.arange(10)
plt.xlabel('x')
plt.ylabel('y')
plt.plot(a,a*1.5,a,a*2.5,a,a*3.5,a,a*4.5)
plt.legend(['1.5x','2.5x','3.5x','4.5x'])
plt.title('simple lines')
plt.show()

效果:
在这里插入图片描述

2.3.6绘制sin(x)函数图像

代码:

import matplotlib.pyplot as plt
import numpy as np
x=np.linspace(-10,10,100) #列举出100个数据点
y=np.sin(x)  #计算出对应的y
plt.plot(x,y,marker="o")

效果:
在这里插入图片描述

三、什么是图灵测试

3.1定义

图灵测试是指测试者与被测试者(一个人和一台机器)隔开的情况下,通过一些装置(如键盘)向被测试者随意提问。
进行多次测试后,如果机器让平均每个参与者做出超过30%的误判,那么这台机器就通过了测试,并被认为具有人类智能。

3.2理解

在人类不知道对方是人类还是机器的情况下,通过对其提出的各种问题的反应来判断是人类还是电脑。通过一系列这样的测试,从电脑被误判断为人的几率就可以测出电脑智能的成功程度。
如果有30%的裁判认为其为人类,则称其拥有人类智能。

四、总结

第一次接触Jupyter Notebook,发现这种单元格式的编程还挺简单方便实用。下载起来也十分方便,直接安装Anaconda来解决Jupyter Notebook的安装问题,因为Anaconda已经自动为你安装了Jupter Notebook及其他工具,还有python中超过180个科学包及其依赖项。同时通过这个复习了一下之前学习的Python,为后面的学习打下了基础,同时了解numpy、pandas、matplotlib库运算和什么是图灵测试。

五、参考资料

Jupyter Notebook介绍、安装及使用教程
20道numpy练习题
图灵测试

猜你喜欢

转载自blog.csdn.net/asdhnkhn/article/details/129448357