Python2-工具安装使用-anaconda-jupyter-PyCharm-Matplotlib

提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档

文章目录

  • 前言
  • [1. 认识标准库](#1. 认识标准库)
  • [2. 日期计算器](#2. 日期计算器)
  • [3. 单词逆序](#3. 单词逆序)
  • [4. 旋转字符串](#4. 旋转字符串)
  • [5. 统计字符串前缀](#5. 统计字符串前缀)
  • [6. pip工具使用](#6. pip工具使用)
  • [7. 二维码生成工具](#7. 二维码生成工具)
  • [8. 操作excel](#8. 操作excel)
  • [9. 程序员鼓励师](#9. 程序员鼓励师)
  • [10. anaconda](#10. anaconda)
  • [11. 新建开发环境](#11. 新建开发环境)
  • [12. 在新建的环境中安装jupyter-notebook](#12. 在新建的环境中安装jupyter-notebook)
  • [13. jupyter notebook 界面优化](#13. jupyter notebook 界面优化)
  • [14. Jupyter Notebook 设置自动补全代码](#14. Jupyter Notebook 设置自动补全代码)
  • [15. 配置新的下载镜像源](#15. 配置新的下载镜像源)
  • [16. 常用工具包安装](#16. 常用工具包安装)
  • [17. jupyter-notebook使用](#17. jupyter-notebook使用)
    • [17.1 新建notebook](#17.1 新建notebook)
    • [17.2 cell操作](#17.2 cell操作)
    • [17.3 快捷键操作](#17.3 快捷键操作)
    • [17.4 markdown演示](#17.4 markdown演示)
    • [17.5 Jupyter Notebook中自动补全代码等相关功能拓展](#17.5 Jupyter Notebook中自动补全代码等相关功能拓展)
  • [18. PyCharm使用jupyter-notebook](#18. PyCharm使用jupyter-notebook)
  • [19. Matplotlib](#19. Matplotlib)
    • [19.1 实现一个简单的Matplotlib画图 --- 以折线图为例](#19.1 实现一个简单的Matplotlib画图 — 以折线图为例)
  • 总结

前言

1. 认识标准库

2. 日期计算器

java 复制代码
import datetime
date = datetime.datetime(2022,2,2)

第一个datetime是模块名

第二个datetime是模块里面的类型

java 复制代码
import datetime
date1 = datetime.datetime(year=2022,month=2,day=2)
date2= datetime.datetime(year=2022,month=2,day=3)
print(date1-date2)
java 复制代码
from datetime import datetime
date  = datetime(2022,2,2)

这样的话from datetime import datetime的意思就是从datetime模块import这个datetime类型

java 复制代码
import datetime as dt
date = dt.datetime(2022,2,2)

这样也可以,dt代替模块名

3. 单词逆序

字符串的方法

java 复制代码
def func1(s:str):
    tokens = s.split(' ')
    tokens.reverse()
    return ' '.join(tokens)
print(func1('hello world'))

split表示按照空格分隔

reverse表示倒转

join表示用空格来组装

4. 旋转字符串

就是判断一个字符转是不是另一个字符串旋转几个字符而来

java 复制代码
def func1(s,goal):
    if(len(s)!=len(goal)):
        return False
    return goal in s+s

这样就可以了

java 复制代码
print(func1('cdb','bcd'))

5. 统计字符串前缀


statswith方法就可以了

java 复制代码
def countPre(words:list,s:str):
    count = 0
    for w in words:
        if s.startswith(w):
            count+=1
    return count

print(countPre(['a','ab','c'],'abc'))

还有endwith

还有in

6. pip工具使用

这个是第三方库

pip就是来下载第三方库的

就是应用商店

安装python的时候就自动安装好了pip

pip是一个命令行

添加到系统路径以后,要重启pc才会生效

pip install 库名

7. 二维码生成工具


pip下载第三库版本的官网
官网

java 复制代码
pip install qrcode

这个就是生成二维码的

java 复制代码
pip install "qrcode[pil]"

我们使用这个

qrcode就是二维码


这个就是使用方法

java 复制代码
import qrcode
img = qrcode.make('我真帅')
img.save("qrcode.png")

save是保存文件

然后就是我们可以把字符串换成链接

这样扫码就可以打开链接了

8. 操作excel

就是xlrd和xlwt

一个读一个写

java 复制代码
pip install xlrd==1.2.0

装一个旧版本

java 复制代码
import  xlrd
#打开文件
xlsx = xlrd.open_workbook('D:/PythonProject/test.xlsx')
#获取指定的标签页,sheet1
table = xlsx.sheet_by_index(0)
#获取表格中有多少行
nrows = table.nrows
print(nrows)

下面的sheet1就是一个标签,我们就是获取这个标签

我们再次获取这个标签有多少行

java 复制代码
import  xlrd
#打开文件
xlsx = xlrd.open_workbook('D:/PythonProject/test.xlsx')
#获取指定的标签页,sheet1
table = xlsx.sheet_by_index(0)
#获取表格中有多少行
nrows = table.nrows
print(nrows)
for i in range(1,nrows):
    print(table.cell_value(i,0))
    print(table.cell_value(i,1))
    print(table.cell_value(i,2))

table.cell_value(i,0)就是获取第i行第0列的数据,是下标,从0开始

9. 程序员鼓励师

java 复制代码
pip install pynput==1.6.8
pip install playsound==1.2.2
java 复制代码
from pynput import keyboard
def onRelease(key):
    print(key)


#这样的话,键盘按键操作就会被捕获到,on_release是释放按键的时候自动要调用的函数-》回调函数
listener = keyboard.Listener(on_release=onRelease)
#开始
listener.start()
#结束
listener.join()

start() 方法:

作用:启动监听器线程,让它开始在后台运行并监听键盘事件

调用后,监听器会在独立的线程中工作,不会阻塞主线程的执行

此时 on_release 等回调函数会开始响应相应的键盘事件

join() 方法:

作用:让主线程等待监听器线程结束

如果没有这个方法,主线程可能会在监听器完成工作前就提前退出

调用后,程序会一直停留在这个方法,直到监听器线程结束(通常需要特定条件来终止)

这样就成功了

这样就捕获到按键了

java 复制代码
from pynput import keyboard
from playsound import playsound
count=0
soundList=['resource/1.mp3','resource/2.mp3']
def onRelease(key):
    global count
    count+=1
    print(key)
    if count%10 == 0:
        #播放音频
        i = random.randint(0,len(soundList)-1)
        playsound(soundList[i])
#这样的话,键盘按键操作就会被捕获到,on_release是释放按键的时候自动要调用的函数-》回调函数
listener = keyboard.Listener(on_release=onRelease)
#开始
listener.start()
#结束
listener.join()

这样就成功了

但是播放声音的时候,再次输入数据可能会卡顿

所以我们可以创建一个线程来专门播放声音

java 复制代码
from pynput import keyboard
from playsound import playsound
from threading import Thread
count=0
soundList=['resource/1.mp3','resource/2.mp3']
def onRelease(key):
    global count
    count+=1
    print(key)
    if count%10 == 0:
        #播放音频
        i = random.randint(0,len(soundList)-1)
        t = Thread(target=playsound,args=(soundList[i],))
        t.start()
#这样的话,键盘按键操作就会被捕获到,on_release是释放按键的时候自动要调用的函数-》回调函数
listener = keyboard.Listener(on_release=onRelease)
#开始
listener.start()
#结束
listener.join()

这个就是创建一个线程来执行方法playsound,执行完线程就退出了

10. anaconda

Anaconda,中文大蟒蛇,是一个开源的 Python 发行版本,其包含了 conda、Python 等

180 多个科学包及其依赖项。

conda 是一个开源的包、环境管理器,可以用于在同一个机器上安装不同版本的软件包及其依赖,

并能够在不同的环境之间切换。Conda 创建环境相当于创建一个虚拟的空间将这些包都装在这个位置,我不需要了可以直接打包放入垃圾箱,同时也可以针对不同程序的运行环境选择不同的 conda 虚拟环境进行运行。

官网

外网下载很慢,可以去清华源
清华源

选择archive

我们下载这个

下载成功以后需要我们配置环境变量

D:\soft2\anaconda

第一个配置这个

D:\soft2\anaconda\Scripts

第二个

D:\soft2\anaconda\Library\bin

第三个

java 复制代码
conda

cmd输入这个命令有效果就可以了

然后我们来创建项目


或者这样

创建的项目就是test

这里使用anaconda的控制

11. 新建开发环境

就这样打开控制台

java 复制代码
conda create -n Test_AI

然后这个是我们创建一个Test_AI的新环境

java 复制代码
conda activate Test_AI

这个表示是把Test_AI设置为当前活动环境


12. 在新建的环境中安装jupyter-notebook

先在home这里选择Test_AI环境

然后可以在这个下面安装jupyter-notebook

java 复制代码
conda update anaconda

可以更新

anaconda

如果没有jupyter notebook的安装的话

或者

java 复制代码
conda install jupyter notebook

在命令行执行

13. jupyter notebook 界面优化

jupyterthemes 是由 Kyle Dunovan 匠心打造的一款宝藏级工具,它让数据分析师、科研

人员和程序员能够轻松定制他们的 Jupyter Notebooks 界面,从而在编码时也能享受到美的

熏陶。该库提供了多样化的主题选择,让你的工作空间焕然一新,提升创作灵感。

jupyterthemes 支持 Python 3.4 至 3.8 版本,并要求安装 Jupyter(推荐使用 Anaconda 进

行便捷管理)。此外,matplotlib 也是其运行必不可少的依赖之一。通过简单地执行几行命

令,你即可安装或更新此插件,进而利用其提供的命令行工具,对字体、大小、颜色乃至

Markdown 与代码块样式进行个性化配置。

用 conda 安装,使用以下命令:

java 复制代码
# install jupyterthemes
conda install -c conda-forge jupyterthemes
# update to latest version
conda update jupyterthemes

如果使用 pip 安装,使用以下命令:

java 复制代码
# install jupyterthemes
pip install jupyterthemes
# upgrade to latest version
pip install --upgrade jupyterthemes

安装完成后,可以通过 jt -h 命令了解 jupyterthemes 命令参数使用。

java 复制代码
jt -h

通过 jt 命令可以设置 jupyter notebook 界面的参数,下面是一个示例

java 复制代码
jt -t gruvboxd -f fira -fs 16 -cellw 90% -lineh 170 -T -N

#jt -t gruvboxd 将主题设置为 gruvboxd

#-f fira 将字体设置为 fira

#-fs 16 将字号设置为 16,可根据自身需要改为其它值

#-cellw 90%将单元格的宽度设置为 90%,这个值越小,敲代码的那栏占屏幕越窄

#-lineh 170 将行距设置为 170px

#-T 显示工具栏

#-N 显示文件名
Jupyter notebook修改主题、字体、字号、颜色

这些处理都是在Test_AI环境里面设置的

14. Jupyter Notebook 设置自动补全代码

先点击"Settings"→"Settings Editor"菜单。

在弹出的窗口中点击 Code Completion;勾选 Enable autocompletion

然后设置自动闭合括号:

15. 配置新的下载镜像源

如果下载比较慢,可以选择国内的下载源(百度搜索"python 镜像源")。

下载时通过参数指定下载源。比如从清华的镜像服务器下载:

java 复制代码
conda install -c 
https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/main/some-package-name

如果你想要将清华源设置为默认源,可以编辑或创建.condarc 文件,在其中添加以下内

容:

java 复制代码
channels:
 - https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/main
 - https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/free
 - defaults
show_channel_urls: true

也可以通过命令行更换下载源:

java 复制代码
conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/free/
conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/main/
conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud/pytorch/
java 复制代码
conda config --set show_channel_urls yes#设置搜索时显示渠道地址,效果如下图

查看当前已有源(Current channels)

java 复制代码
conda config --show-sources

有时候国内镜像源无法连接,需要恢复原来的源时使用如下命令:

java 复制代码
conda config --remove-key channels

16. 常用工具包安装

Pandas、Numpy、Matplotlib 是三个常用的 python 工具包。

java 复制代码
conda install numpy 或 pip install numpy
conda install pandas 或 pip install pandas
conda install matplotlib 或 pip install matplotlib
java 复制代码
conda install tables

tables 通常指的是 PyTables 库,它是一个用于高效处理大型数据集的工具库

但是tables还没有适合最新版本的python版本,所以可以先不安装

17. jupyter-notebook使用

Jupyter项目是一个非盈利的开源项目,源于2014年的ipython项目,因为它逐渐发展为支持跨所有编程语言的交互式数据科学和科学计算

Jupyter Notebook,原名IPython Notbook,是IPython的加强网页版,一个开源Web应用程序

名字源自Julia、Python 和 R(数据科学的三种开源语言)

是一款程序员和科学工作者的编程/文档/笔记/展示软件

.ipynb文件格式是用于计算型叙述的JSON文档格式的正式规范

Jupyter Notebook 相比 Pycharm 在画图和数据展示方面更有优势。

进入虚拟环境,输入 jupyter notebook

或者在这里点击,都可以进入 jupyter notebook

就会进入这个了

这个其实就是对应了C:\Users\zjdsx

发生这个的原因主要是因为

我们这里对应的目录是这样的

我们直接输入D:

就可以进入到D盘了

然后cd到我们想要的目录

这样启动的话

/就对应为D盘了

17.1 新建notebook

直接新建一个python3

notebook的文档格式是 .ipynb

然后进入这个界面

这里可以写python代码了,而且一边写还一边有输出效果

Untitled那里就是改文件名

写入代码,然后点击shift+enter就可以有输出效果了


17.2 cell操作

一个in和out就是一个cell

cell:一对In Out会话被视作一个代码单元,称为cell

cell行号前的 * ,表示代码正在运行

java 复制代码
import time
time.sleep(4)

Jupyter支持两种模式:

编辑模式(Enter)

命令模式下 回车Enter 或 鼠标双击 cell进入编辑模式

可以操作cell内文本或代码,剪切/复制/粘贴移动等操作

命令模式(Esc)

按 Esc 退出编辑,进入命令模式

可以操作cell单元本身进行剪切/复制/粘贴/移动等操作

这个可以对一行进行粘贴和复制

所以我们运行还可以点击按钮来

运行到一半还可以点击停止

restart是所有重新运行

code就是写代码

md就是写笔记

17.3 快捷键操作

java 复制代码
两种模式通用快捷键
Shift+Enter ,执行本单元代码,并跳转到下一单元
Ctrl+Enter ,执行本单元代码,留在本单元
命令模式:按ESC进入
Y ,cell切换到Code模式
M ,cell切换到Markdown模式
A ,在当前cell的上面添加cell
B ,在当前cell的下面添加cell

编辑模式:按Enter进入
补全代码:变量、方法后跟 Tab键
为一行或多行代码添加/取消注释: Ctrl+/ (Mac:CMD+/)

17.4 markdown演示

java 复制代码
# 111
## 222
### 333
- 111
  - 222
    - 333
      - 444

标题就不说了很简单,几级标题就是几个#

然后缩进的话,就是 - + 空格 + 描述

然后回车,删掉一个-,再次-,就是二级缩进了

然后点击shift+enter也是可以执行的

17.5 Jupyter Notebook中自动补全代码等相关功能拓展

我们添加一下这几个东西

就要安装jupyter_contrib_nbextensions库

安装该库的命令如下:

java 复制代码
python -m pip install jupyter_contrib_nbextensions

然后执行:

java 复制代码
jupyter contrib nbextension install --user --skip-running-check

在原来的基础上勾选: "Table of Contents" 以及 "Hinterland"

其实弄不弄这个都无所谓

注意这个安装这个的要求jupyter的版本比较低,高版本的jupyter就不行了

18. PyCharm使用jupyter-notebook

注意PyCharm也可以使用jupyter-notebook

我们在创建项目的时候就可以选择这个环境

我们发现这里就直接扫描到了我们在anaconda中创建的环境Test_AI了

然后那个test_9_8是项目名字

我们选择了Test_AI这个环境以后,我们就不用再次安装Pandas、Numpy、Matplotlib这些东西了,因为这个环境已经安装好了

但是我们在PyCharm使用conda 的时候会报错的

因为使用 conda install pandas 命令安装 pandas 包时,由于你还没有接受某些 conda 镜像源(channels)的服务条款(Terms of Service ,简称 ToS),导致安装无法继续

清华源是可以不用接受

为什么还要接受对应的服务条款呢,这个是因为,虽然我们配置了清华源,而且清华源也不用配置服务条款,但是我们里面还有对应的官方源,而且官方源以前就设置好了,所以我们要么删除这三个官方源,

java 复制代码
conda config --remove channels https://repo.anaconda.com/pkgs/main

要么就给这三个官方源配置服务条款

java 复制代码
conda tos accept --override-channels --channel https://repo.anaconda.com/pkgs/main
conda tos accept --override-channels --channel https://repo.anaconda.com/pkgs/r
conda tos accept --override-channels --channel https://repo.anaconda.com/pkgs/msys2

然后我们再次在这个Test_AI的环境里面执行代码

java 复制代码
 conda install pandas

提示我们早就已经安装好了

然后就可以操作了

而且我们这里的控制台显示也是在Test_AI环境下的

19. Matplotlib

Matplotlib

是专门用于开发2D图表(包括3D图表)

以渐进、交互式方式实现数据可视化

19.1 实现一个简单的Matplotlib画图 --- 以折线图为例

matplotlib.pytplot包含了一系列类似于matlab的画图函数。

java 复制代码
import matplotlib.pyplot as plt

图形绘制流程:

java 复制代码
plt.figure(figsize=(), dpi=)
figsize:指定图的长宽
dpi:图像的清晰度
返回fig对象
java 复制代码
.绘制图像 -- plt.plot(x, y)

.显示图像 -- plt.show()

举例:展现上海一周的天气,比如从星期一到星期日的天气温度如下

java 复制代码
import matplotlib.pyplot as plt
# 1.创建画布
plt.figure(figsize=(10, 10), dpi=100)
# 2.绘制折线图
plt.plot([1, 2, 3, 4, 5, 6 ,7], [17,17,18,15,11,11,13])
# 3.显示图像
plt.show()
java 复制代码
import matplotlib.pyplot as pit
#创建画图 ,figsize表示长和宽的比是20:8,,dpi表示清晰度,dpi越小,图形就越小越模糊
pit.figure(figsize=(20,8),dpi=100)
#绘制图像
pit.plot([1, 2, 3,4,5,6,7], [4, 5, 6,34,23,34,12])
#图像显示
pit.show()

总结

相关推荐
Metaphor6923 小时前
Java 高效处理 Word 文档:查找并替换文本的全面指南
java·经验分享·word
ChinaRainbowSea3 小时前
7. LangChain4j + 记忆缓存详细说明
java·数据库·redis·后端·缓存·langchain·ai编程
stormsha3 小时前
飞算JavaAI炫技赛电商系统商品管理模块的架构设计与实现
java·架构·鸿蒙系统
minh_coo3 小时前
Spring框架事件驱动架构核心注解之@EventListener
java·后端·spring·架构·intellij-idea
翻滚丷大头鱼3 小时前
Java 集合Collection—List
java·开发语言
Jerry3 小时前
Compose 设置文字样式
android
敲键盘的肥嘟嘟左卫门4 小时前
StringBuilder类的数据结构和扩容方式解读
java
飞猿_SIR4 小时前
android定制系统完全解除应用安装限制
android
码出钞能力4 小时前
更换libc.so导致linux变砖,通过LD_PRELOAD挽救
linux·服务器