Python相关
主要介绍Anaconda使用过程中出现的问题,如创建虚拟环境等;jupyter的使用;pycharm的使用。。。
霄逸鸿
日积月累方堆壁垒!
展开
-
matplotlib绘制坐标轴上数字的千位分隔符
python中的matplotlib绘图原创 2022-10-09 19:24:28 · 1431 阅读 · 1 评论 -
Python按顺序读取文件夹中文件
我们有时候会读取一个文件夹中的所有的文件。但是,os.listdir()返回的文件名不一定是顺序的,这就要求我们对返回的文件名列表进行排序:这时我们想到利用Epoch后面的数字对其进行排序,具体代码如下:def file_name(path): train_loss_list = [] val_loss_list = [] loss_file_name = [] files = os.listdir(path) # 采用listdir来读取所有文件..原创 2022-04-11 16:21:19 · 8880 阅读 · 1 评论 -
Pycharm中实现动态图显示
step1: Preferencestep2: Toolsstep3: Python Scientificstep4: 不要勾选Show plots in tool window原创 2021-08-25 22:15:12 · 2074 阅读 · 4 评论 -
ax.add_patch()的使用
作用:为图像添加补丁,具体代码如下代码所示。import numpy as npimport matplotlib.pyplot as pltfrom matplotlib.patches import Circle# 创建画布fig = plt.figure(figsize=(12, 8), facecolor='beige', # 米黄色 )# 划分子区axes = fig.subplots(nrows=2,原创 2021-08-18 22:01:31 · 9232 阅读 · 2 评论 -
np.argmax()和max()助解
一、argmax()argmax取最大值,然后返回索引。(1)一维向量import numpy as npa = np.array([3, 1, 2, 4, 6, 1])res = np.argmax(a)print(res)取a中元素最大值所对应的索引(索引默认从0开始),此时的最大值是6,其对应的位置索引值为4。(2)二维张量a = np.array([[1, 5, 5, 2], [9, 6, 2, 8], [3原创 2021-08-07 21:05:33 · 658 阅读 · 0 评论 -
Numpy中的(axis=?)助解
在阅读开源项目代码时,总是被numpy中的(axis=?)搞得懵逼,特别是维度较高的时候。近期读了几篇博客终于给寡人整明白了。下面通过示例说明numpy中axis的使用。首先对numpy中axis取值进行说明:一维数组时axis=0,二维数组时axis=0,1,维数越高,则axis可取的值越大,数组n维时,axis=0,1,…,n。为了方便下面的理解,我们这样看待:在numpy中数组都有着[]标记,则axis=0对应着最外层的[ ],axis=1对应第二外层的[ ],以此类推,axis=n对应第n外层的原创 2021-08-07 17:10:55 · 193 阅读 · 0 评论 -
np.array和PIL.Image之间的相互转换
当使用PIL.Image.open()打开图片后,如果要使用img.shape函数,需要先将image形式转换成array数组。# img to arrayimg = numpy.array(im)array转化为image形式# array to imageimg = Image.fromarray(img.astype('uint8')).convert('RGB')# 或者img = Image.fromarray(np.uint8(img))代码:from .原创 2021-08-07 11:08:39 · 4662 阅读 · 0 评论 -
glob.glob() 函数
查找符合特定规则的文件路径名。查找文件只用到三个匹配符:“”, “ ? ”,“ [ ] ”,“ * ”。“ ”匹配0个或多个字符;“ ? ”匹配单个字符;“ [] ”匹配指定范围内的字符,如:[0-9]匹配数字。“ * ”匹配所有。该函数返回所有匹配的文件路径列表。它只有一个参数pathname,定义了文件路径匹配规则,这里可以是绝对路径,也可以是相对路径。# 绝对路径for root, dirs, files in os.walk(dataset_dir):for..原创 2021-08-06 11:02:50 · 571 阅读 · 0 评论 -
pickle.load()和pickle.dump()
python的pickle模块实现了基本的数据序列和反序列化。pickle.dump(obj, file, [,protocol])注:将对象obj保存到文件file中去。 protocol为序列化使用的协议版本,0:ASCII协议,所序列化的对象使用可打印的ASCII码表示;1:老式的二进制协议;2:2.3版本引入的新二进制协议,较以前的更高效。protocol默认值为0,如果protocol>=1,文件对象需要是二进制模式打开的。pickle.load(fi.原创 2021-08-06 10:21:24 · 23838 阅读 · 0 评论 -
python中的next()和iter()函数
可迭代的对象(可以用for循环的对象)Iterable:一类:list,tuple,dict,set,str;二类:generator(都是Iterator对象),包含生成器和带yield的generatoe function。而生成器不但可以作用于for,还可以被next()函数不断调用并返回下一个值,可以被next()函数不断返回下一个值的对象称为迭代器:Iterator。生成器都是Iterator对象,但list,dict,str是Iterable,不是Iterator,要把list,原创 2021-08-01 22:12:03 · 1038 阅读 · 0 评论 -
PyCharm实现高效远程调试代码
一、PyCharm实现远程调试代码一些系列确认之后开始上传项目文件。二、远程终端的使用(1)方法1:调用远程服务器终端,开启Linux ssh绘画窗口,如下图:下面的操作和在里面中的一样。(2)方法2:File -> Settings -> Tools -> SSH Terminal,如下图位置选择Linux服务器的Python版本路径。下图是代码同步记录:三、使用 PyCharm 注意事项:代码修改,选择左边的本地目录进行...原创 2021-08-01 13:54:09 · 253 阅读 · 0 评论 -
Pycharm创建项目时头部自动添加信息
1.打开PyCharm,选择File--Settings2.依次选择Editor---Code Style-- File and Code Templates---Python Script3.添加头部内容#!/usr/bin/python3 可用的预定义文件模板变量为: $ {PROJECT_NAME} - 当前项目的名称。 $ {NAME} - 在文件创建过程中在“新建文件”对话框中指定的新文件的名称。 $ {USER} - 当前用户的登录名。..原创 2021-07-24 14:35:42 · 288 阅读 · 0 评论 -
Image.open(path_img).convert(‘RGB‘)
使用Image.open读出图像,加convert('RGB')的作用。读出来的图像是RGBA四通道的,A通道为透明通道,该对深度学习模型训练来说暂时用不到,因此使用convert(‘RGB’)进行通道转换import osfrom PIL import Imagepath_img = os.path.join(os.path.dirname(os.path.abspath(__file__)), "picture.png")img1 = Image.open(path_img)img2原创 2021-07-13 18:14:35 · 16145 阅读 · 0 评论 -
os.path.dirname()、os.path.abspath()、os.path.join()、 os.walk()以及os.listdir()的使用
import os# 返回.py文件的目录 ==> .py文件所在的目录path1 = os.path.dirname(__file__)print(path1)# 返回的是.py文件的绝对路径path2 = os.path.abspath(__file__)print(path2)# 组合使用path3 = os.path.dirname(os.path.dirname(__file__))print(path3)# 拼接路径path4 = os.path.join(.原创 2021-06-06 14:09:24 · 1547 阅读 · 3 评论 -
python中的“ ... ”
import numpy as npa = np.array([[[1, 2, 21], [3, 4, 34]], [[5, 6, 56], [7, 8, 78]]])print("a:",a)print('a.shape:', a.shape)print("-"*10)'''[...,0:2]针对的是最后一个维度的下标为0、1的元素'''b = a[..., 0:2]print('b :', b)print('shape.b:', b.shape)p.原创 2021-06-05 23:14:29 · 6201 阅读 · 0 评论 -
VScode 快捷键选择python虚拟环境
ctrl+shift+p原创 2021-05-10 21:07:38 · 891 阅读 · 0 评论 -
在python中可视化函数之间的调用关系
项文件多如何有效的梳理项目文件显得尤为重要!!!使用下面三个模块(主要是1和2)生成函数关系调用图:一、graphviz(Graph Visualization Software-图形可视化软件)二、pycallgraph(创建python的可视化图形)三、objgraph(查看python对象图)请参考:https://blog.csdn.net/anque1234/article/details/101423303?utm_medium=distribute.pc_relevant.no原创 2021-01-22 20:45:36 · 2356 阅读 · 1 评论 -
当前python第三方包版本太高,如何降低版本
numpy为例:因为numpy==1.19.x 和numpy==1.17.x不兼容!!!!1.查看当前的版本:pip show numpy2.降低pip install -U numpy==1.17.0 -i https://pypi.tuna.tsinghua.edu.cn/simple还有一种办法,比较暴力:先卸载再安装,嘿嘿!!!pip uninstall numpypip install numpy==1.17.1...原创 2020-12-31 22:11:58 · 27625 阅读 · 1 评论 -
pycharm当前路径明明有包就是无法使用解决办法
(1)选中对应的文件夹,按照下图操作(2)以上方法还是不行,那就删除项目下的.idea文件,重新打开项目。大部分能解决!!!原创 2020-12-28 23:44:52 · 1303 阅读 · 0 评论 -
pycharm 格式化代码的快捷键
(1)快捷键:Ctrl + Alt + L 可以将代码格式工整化(2)鼠标点击原创 2020-12-19 20:51:32 · 935 阅读 · 1 评论 -
解决could not find a version that satisfies the requirement torch等类似问题
按报错的字面意思的话就是说没有找到对应的版本明明就是复制的官网的命令去执行的,而且我去它的whl下载的网址中查看:https://download.pytorch.org/whl/torch_stable.html,发现确实有对应的版本存在。个人觉得应该是网络的问题,pip去下载安装对应的库,本质上也应该是去下载whl,所以感觉就是网不好,没找到吧。1.首先pip list查看下是否有对应的wheel这个库。没有的话去上面的链接找对应的wheel文件。注意:还要根据你的pytho...原创 2020-11-26 16:40:13 · 6138 阅读 · 3 评论 -
python数据可视化-matplotlib
matplotlib1.线形图:plt.plot(参数)X轴,Y轴坐标的数据格式可以是列表、数组和Series。import numpy as npimport pandas as pdimport matplotlib.pyplot as pltimport seaborn as sns%matplotlib inline# 创建数据data = { 'name':['张三', '李四', '王五', '小明'], 'sex':['female', 'female', 'ma.原创 2020-11-02 23:12:14 · 296 阅读 · 0 评论 -
数据分析-数据分组与聚合
python数据分析基础6.数据分组与聚合,原理图详见P126页1.数据分组groupby()没有分组的键,可以手动新建一个 df = DataFrame(np.arange(16).reshape(4,4)) df list1 = ['a','b','a','b'] # 新增键 # 按照新增键进行分组 df.groupby(list1).sum()2.聚合运算聚合运算就是对 分组后的数据 进行计算- 聚合运算的方法- 1.cou.原创 2020-11-02 22:53:07 · 839 阅读 · 0 评论 -
数据分析-数据清理与整理
5.数据清洗与整理1.数据清洗- (1)处理缺失值- 1.侦查缺失值 - df.isnull() - True的为缺失值 - df.notnull() - False为缺失值 - df.info - 查看dataframe字段信息 from pandas import Series,DataFrame import pandas as pd import numpy as np %matplotlib inline df1 = DataFr.原创 2020-11-02 22:50:08 · 1145 阅读 · 0 评论 -
数据分析-外部数据的读取与存储
4.外部数据的读取与存储1.文本数据的读取和存储- (1)CSV文件的读取:read_csv() import pandas as pd df = pd.read_csv(open(r'H:\我的视频录制\从零开始学Python数据分析\data\ch4ex1.csv')) df 注意:读取CSV文件时,如果文件路径中有中文,需要加open函数,否则会报错。 path = open("绝对路径") df = pandas.read_csv(path) -.原创 2020-11-02 22:31:26 · 516 阅读 · 0 评论 -
python数据分析-Pandas
pandas有两个基本的数据结构:Series和DataFrame。Series数据结构类似于一维数组,但它是一组数据和一组对应的索引组成,通过一个列表数据即可产生最简单的Series数据。DataFrame为表格型数据。 (类似Excel结构)1.pandas数据结构- 1.创建Series (索引+值) from pandas import Series import pandas as pd obj = Series([1, -2, 3, -4]) obj 0 1.原创 2020-11-02 22:13:20 · 443 阅读 · 0 评论 -
python数据分析-Numpy
2.Numpynumpy能将 序列数据(列表、元组、数组和其他序列类型) 转换为ndarray数组,ndarray是一个同构数据容器,当创建好一个ndarray数组时,同时会在内存中存储ndarray的shape和dtype。shape是ndarray维度大小的元组,dtype是ndarray数据类型的对象。1.ndarray多维数组1.创建ndarray数组zeros、zeros_like创建指定长度或者形状的全0数组np.zeros(8)np.zeros((3,4))like以原创 2020-11-02 21:31:55 · 701 阅读 · 0 评论 -
Anaconda虚拟环境管理、包管理和源管理
1.环境(Anacnoda)1.Anaconda 的使用1.包管理python --version查看python的版本信息conda list查看安装的包conda install xxx包的安装(pip install xxx)conda remove xxx卸载包(pip uninstall xxx)2.环境管理conda create --name xxx python2创建了python版本为2的环境cond原创 2020-11-02 21:14:30 · 793 阅读 · 0 评论 -
python类与对象、函数、模块、文件和IO
python进阶篇文件与IO1.基本文件操作在使用文件对象时,首先需要通过内置的open()方法创建一个文件对象,然后 通过该对象提供的方法进行一些基本文件操作。1.创建和打开文件open()打开文件并创建文件对象file = open(filename, mode, buffering)file: 被创建的文件对象、filename: 要创建或者打开文件的文件名,需要使用单引号或者双引号括起来。待打开的文件在当前位置,不用使用绝对路径,否则使用。mode:可选参数,用原创 2020-11-02 10:02:46 · 1088 阅读 · 2 评论 -
python基础语法整理笔记
序列:sequence不是python中的关键字,python内置了5个常用的序列结构:分别是列表、元组、集合、字典和字符串。列表、元组、字符串之间可以相互转化,使用list、tuple、str。列表:一个列表中,元素的类型可以不同,因为它们之间没有任何关系。元组:元组中的元素是固定不变的,它们的值不能修改。字符串:...原创 2020-11-01 22:49:32 · 169 阅读 · 0 评论 -
python基础语法思维导图
原创 2020-11-01 18:36:05 · 301 阅读 · 0 评论 -
jupyter 中 markdown使用
1.标题# 一级标题 ## 二级 ### 三级 #### 四级 ##### 五级 ###### 六级2.列表 - 列1 - 列2 -列3 有序列表(1. 列1 2. 列2 ) !注意-、1. 与文本之间保留一个字符的空格3.换行---单个段落<p>,多好<br /> ! br 与 /之间有空格4.分割---使用三个---5.缩进---tab6.链接---[显示文本](链接地...原创 2020-10-31 17:10:23 · 862 阅读 · 0 评论 -
pycharm无法导入自己编写的包
这是由于该程序不在根目录下,无法导入本地包,解决办法如下:1.清除缓存并重启:(File -> Invalidate Caches / Restart...)2. 设置源目录(注意设置哪个目录,这里设置的是test_suite)(右键源目录 -> Make Directory as -> Sources Root)...原创 2020-10-22 21:22:52 · 1850 阅读 · 0 评论 -
jupyter 环境下的常用快捷键
A 在当前单元格上方创建一个单元格B 在当前单元格下方创建一个单元格L 打开/关闭行号DD 删除当前单元格S 手动保存笔记本command+shift+P 调出命令行,适用于谷歌个safariH 查询命令行命令Y 从markdown切换到单元格M 从单元格却换到markdown...原创 2020-10-20 19:59:50 · 321 阅读 · 0 评论 -
Anaconda内装了pytorch,但是jupyter一直显示未安装!
原因就是在使用Jupyter Notebook的时候,加载的仍然是默认的Python Kernel。解决方案:安装nb_conda包。conda install nb_conda如果无法安装可能需要升级下conda,升级命令:conda update -n base -c defaults conda安装成果结果如图:Nice!!!!...原创 2020-10-20 16:50:44 · 1606 阅读 · 1 评论