![](https://img-blog.csdnimg.cn/20201014180756916.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
Python
Ethan的博客
博主技术交流Q群:1151493105
展开
-
Python代码获取各种路径及相对路径与绝对路径的区别
1.获取当前代码路径import ospath0 = __file__ #返回当前代码路径+代码名(可能是相对路径,也可能是绝对路径)path1 = os.path.dirname(os.path.abspath(__file__)) #返回当前代码绝对路径#dirname返回当前代码绝对路径,filename返回代码名dirname, filename = os.path.split...原创 2019-04-21 17:53:26 · 1132 阅读 · 0 评论 -
Python函数参数中的*tuple和**dict参数
描述很多复杂函数在调用时会用到*tuple和**dict,现在记录一下,请看下面代码:# 参数列表中的arg代表一个参数,这个参数可以是整数,浮点数或者是字符串# 参数列表中的*args代表一个元组参数,适用于在定义函数的时候,并不确定参数究竟需要几个的场景def func1(arg, *args): print("arg:", arg) print("args:", args) for value in args: print("other args:",原创 2020-12-29 19:30:54 · 1601 阅读 · 0 评论 -
将conda虚拟环境设置为电脑默认的python环境
Linux系统安装anaconda后,系统默认python环境是anaconda 默认创建的“root”/“base”环境,这是因为它把“启动root”写在了环境变量的用户配置文件.bashrc中,因此只要在此文件末尾加一行就搞定!conda activate your_envs # your_envs就是你的虚拟环境名称至于你是用vim修改,还是用sublime直接修改,就随意了。Windows系统默认python环境指添加到系统变量里的python,在cmd命令端直接执行python代码原创 2020-06-16 18:03:07 · 14659 阅读 · 2 评论 -
Python求两个圆的交点坐标或三个圆的交点坐标
计算两个圆的交点代码如下# -*- coding: utf-8 -*-import mathimport numpy as npdef insec(p1,r1,p2,r2): x = p1[0] y = p1[1] R = r1 a = p2[0] b = p2[1] S = r2 d = math.sqrt((abs(a-x)...原创 2018-08-13 18:17:42 · 6996 阅读 · 1 评论 -
统计Python代码运行时间
import datetimestart = datetime.datetime.now() ------end = datetime.datetime.now()print (end-start)原创 2018-08-27 19:00:38 · 1255 阅读 · 0 评论 -
Python创建一个空的dataframe,并循环赋值
# 创建一个空的 DataFramedf_empty = pd.DataFrame()#或者df_empty = pd.DataFrame(columns=['A', 'B', 'C', 'D'])#添加数据a为一个新的dataframedf_empty = df_empty.append(a)原创 2018-08-28 14:04:18 · 32783 阅读 · 1 评论 -
Python代码在cmd 命令窗口执行,同时需读取文件数据,以及引用TensorFlow时出现的问题解决办法
一、对于不需读取文件数据的代码打开命令窗口直接输入:python+空格+代码路径\代码名二、对于需要读取文件数据的代码命令窗口输入:python+空格+代码路径\代码名+空格+文件路径\文件名(可以加多个文件)问题:引用TensorFlow时出现的问题运行后出现error:Your CPU supports instructions that this Tensor...原创 2018-09-06 18:08:30 · 1244 阅读 · 0 评论 -
Python代码调用数据库SQL server系列
一、连接数据库 #连接数据库from sqlalchemy import create_engine#格式#engine = create_engine("mssql+pyodbc://登录名:密码@服务器名称/数据库名?driver=SQL+Server+Native+Client+10.0", encoding="utf8", echo=True)#案例engine1 = c...原创 2018-09-10 16:36:18 · 1228 阅读 · 2 评论 -
Python与机器学习总结
一、线性回归思路:建立预测值与真实值之间的误差方程,而所有数据的误差值服从独立同分布的高斯分布,为了使预测值更接近真实值,即当权重为多少时,使偏置最小,关于权重的似然函数,进而求对数似然函数的极大值,最后得出求最小二乘法的极值,一般只有线性函数可以直接求出极小值,而其他非线性函数只能通过梯度下降逐渐逼近极小值。梯度下降方向二、逻辑回归:适合于二分类问题用于多分类问题有两种变化:1、建立...原创 2018-09-13 21:16:03 · 1070 阅读 · 0 评论 -
使用方法:requirements.txt 文件 里面记录了当前程序的所有依赖包及其精确版本号
step1:在当前需要运行的代码目录下打开cmd窗口输入:pip install pigar (第一次需要运行,后面就不需要了)step2:输入:pigar ,同意step3:输入:pip install -r requirements.txt ...原创 2018-09-21 10:51:55 · 806 阅读 · 0 评论 -
Windows下安装TensorFlow的相关问题解答
提醒:对于使用Python主要用于处理数据分析问题的伙伴,建议最好先安装anaconda,下载地址:https://www.anaconda.com/download/。安装方法也很简单,一路同意就可以,只是千万记得勾选添加环境路径。下面主要讲安装TensorFlow的相关问题:一、怎么安装TensorFlow安装方法1:打开cmd窗口输入:pip install tensorfl...原创 2018-09-21 14:04:14 · 134 阅读 · 0 评论 -
Python批量修改文件名
# coding: utf-8import ospath="F:\\used_code\\BaiduImage\\images\\" #文件路径 #file = open('F:\\used_code\\BaiduImage\\name.txt', 'r')#'''以换行符生成列表'''#result = []#for a in file.readlines():# ...原创 2018-12-28 17:05:12 · 141 阅读 · 0 评论 -
python中append函数在list数据和dataframe数据中的区别
append在list中的使用a_list = [123, ‘xyz’, ‘zara’, ‘abc’];aList.append( 2009 );print "Updated List : ", aList;以上实例输出结果如下:Updated List : [123, ‘xyz’, ‘zara’, ‘abc’, 2009]append在dataframe中的使用df = pd.D...原创 2019-01-08 20:56:22 · 3877 阅读 · 0 评论 -
使用国内镜像pip源,提升下载速度和安装成功率
对于Python开发用户来讲,PIP安装软件包是家常便饭。但国外的源下载速度实在太慢,浪费时间。而且经常出现下载后安装出错问题。所以把PIP安装源替换成国内镜像,可以大幅提升下载速度,还可以提高安装成功率。国内源:新版ubuntu要求使用https源,要注意。清华:https://pypi.tuna.tsinghua.edu.cn/simple阿里云:http://mirrors.aliy...转载 2019-04-29 12:28:19 · 1635 阅读 · 1 评论 -
python打印输出的三种print方式
一 根据逗号(,)隔开num= 100i = 0for i in range(num): i += 1 print('总共:', num, '--剩余:', num-i)结果:总共: 100 --剩余: 99总共: 100 --剩余: 98总共: 100 --剩余: 97总共: 100 --剩余: 96总共: 100 --剩余: 95总共: 100 --剩余: 94二...原创 2019-07-19 10:07:32 · 23765 阅读 · 0 评论 -
python缩短大量数据处理时间-进程池pool()和map()
一 定义与解释对于python代码,多线程其实是个假的,因为每次计算的时候,实质上只有一个线程计算。使用多线程时,是几个线程之间切换计算,就像轮班工作一下,适合处理I/O密集型的任务。对于python代码,多进程才是真正意义上的多个进程在同一时间同时计算,就像几个人同时工作,适合处理计算(CPU)密集型的任务进程池就是我们将所要运行的东西,放到池子里,Python会自行解决多进程的问题...原创 2019-07-19 17:27:10 · 8546 阅读 · 4 评论 -
Anaconda创建环境、删除环境、激活环境、退出环境
创建环境//下面是创建的环境名叫py36,环境版本为python=3.6conda create -n py36 python=3.6 激活环境source activate py36 (conda的是:conda activate py36)退出环境source deactivate (conda的是:conda deactivate)删除环境(不要乱删啊啊啊)conda...原创 2019-09-03 09:51:33 · 1680 阅读 · 0 评论 -
Python求两点之间的直线距离(两种方法)
方法一:#导入math包import math#定义点的函数class Point: def __init__(self,x=0,y=0): self.x=x self.y=y def getx(self): return self.x def gety(self): return self.y ...原创 2018-08-13 14:39:31 · 88666 阅读 · 1 评论 -
Python中对数组集进行按行打乱shuffle
import numpy as npy1=np.random.randint(2,10,(5,3))print ("排序列表:", y1)np.random.shuffle(y1)print ("随机排序列表:", y1)原创 2018-08-15 18:29:17 · 5487 阅读 · 0 评论 -
.c文件生成64/32位的.dll文件,同时Python调用c文件
Python中的ctypes模块可能是Python调用C方法中最简单的一种。ctypes模块提供了和C语言兼容的数据类型和函数来加载dll文件,因此在调用时不需对源文件做任何的修改。也正是如此奠定了这种方法的简单性。示例如下:实现两数求和的C代码,保存为add.c#include "stdio.h" __declspec(dllexport) int sum(int a, int b){ ...原创 2018-07-02 20:34:52 · 941 阅读 · 0 评论 -
Python3文件路径指定方式
一、相对路径1、直接写文件名,如data.txt注意:相对路径是相对于文件当前的工作路径而言的,所以读取的文件一定要在当前代码的路径下2、当前路径的子路径下的文件./resources/data.txt二、绝对路径c:\pythonworkspace\data.txt...原创 2018-07-16 17:59:10 · 5590 阅读 · 0 评论 -
pygame创建窗口后窗口未响应,或pygame 窗口每次无法正常关闭
在while循环语句后面加上这段代码while True:...... for event in pygame.event.get(): if event.type == pygame.QUIT: pygame.quit()最后关闭程序时要点击窗口关闭按钮示例如下:import pygamepygame.init...原创 2018-07-17 15:29:42 · 25557 阅读 · 21 评论 -
python中3种调用可执行文件.exe的方法
方法一、os.system()会保存可执行程序中的打印值和主函数的返回值,且会将执行过程中要打印的内容打印出来import os main = "project1.exe"r_v = os.system(main)print (r_v )方法二、commands.getstatusoutput() 会保存可执行程序中的打印值和主函数的返回值,但不会将执行过程中要打印的内容打印出来i...原创 2018-07-04 20:40:25 · 90812 阅读 · 18 评论 -
np.random.randint、np.random.choice、random.sample三种随机函数的用法案例
一、np.random.randintimport numpy as npy1=np.random.randint(2,10,(3,2))print(y1)输出: array([[6, 5], [2, 6], [6, 4]])解释:生成3行2列的数组,取值范围[2,10)之间二、np.random.choiceimport numpy as npa1=np.ar...原创 2018-07-04 21:18:32 · 26792 阅读 · 0 评论 -
win系统下安装Python的fbprophet模块
一、按照官方说明fbprophet,windows用户在安装前必需有C++编译器(下载地址:C++),如果电脑里装了vs2015或以上并且安装的时候勾选了C++,那么此步骤可省略。二、然后就是安装pystan了,这一步网上有 pip 和 conda 两种安装方法。我自己是用pip install pystan安装的。三、最后比较麻烦的就是安装fbprophet了,直接 pip 或 conda ...原创 2018-07-23 15:00:15 · 2993 阅读 · 3 评论 -
疑问:Python跨模块调用函数时,被调用函数内部不能使用全局变量
简单案例:模块1中的函数def add(): print(a) if __name__=='__main__': a=10 add() 模块2中的函数from 模块1 import adda=20add()此为模块2调用模块1中的函数,但调用失败,错误提示如下:总结:跨模块调用函数时,被调用函数内部不能使用全局变...原创 2018-07-18 14:38:58 · 5430 阅读 · 4 评论 -
Python读写.csv\.xls\.xlsx\.txt文件
一、Python读写.csv文件[1]读取文件数据:import pandas as pdfrom pandas import DataFrame'''有列名和行名的.csv文件'''data2 = pd.read_csv('dataQ8.csv',index_col=[0],parse_dates = True) data01=data2.indexdata02=data2['fl...原创 2018-07-06 14:42:55 · 768 阅读 · 0 评论 -
Python生成一段时间的日期数据及对应的星期几
import pandas as pddate=pd.date_range('2010/1/1','2010/12/31', freq='D')week=[int(i.strftime("%w")) for i in date] # 0表示星期日dataframe = pd.DataFrame({'date':date,'week':week}) dataframe.to_exce...原创 2018-07-24 15:27:27 · 5755 阅读 · 0 评论 -
Python中pandas.DataFrame重置索引名称
例子:创建DataFrame ### 导入模块import numpy as npimport pandas as pdimport matplotlib.pyplot as plttest = pd.DataFrame({'a':[11,22,33],'b':[44,55,66]})""" a b0 11 441 22 552 33 66"""...原创 2018-07-24 17:20:20 · 11491 阅读 · 1 评论 -
数组按列转换为字典,以及字典合并更新
#以第一列为字典名,其他列为值a=np.random.randint(2,10,(6,3))b={}for i in range(len(a)): c={a[i,0]:a[i,1:3]} b.update(c) #列表合并更新 a1=np.random.randint(10,15,(3,3))b1={}for i in range(len(a1...原创 2018-07-19 13:49:32 · 2519 阅读 · 0 评论 -
Python中plt的画图函数
1、plt.legendplt.legend(loc=0)#显示图例的位置,自适应方式说明:'best' : 0, (only implemented for axes legends)(自适应方式)'upper right' : 1,'upper left' : 2,'lower left' : 3,'lower right' : 4,'rig...原创 2018-07-25 17:50:28 · 5100 阅读 · 0 评论 -
Python中给Nan值更改为0
import pandas as pddf1 = pd.DataFrame([{'col1':'a', 'col2':1}, {'col1':'b', 'col2':2}])df2 = pd.DataFrame([{'col1':'a', 'col3':11}, {'col1':'c', 'col3':33}])data = pd.merge(left=df1, right=df2, h...原创 2018-07-26 15:55:27 · 48730 阅读 · 0 评论 -
python代码讲文字写入.docx文件中
注意:首先安装.docx模块 pip install python-docx原创 2018-07-16 08:54:29 · 1371 阅读 · 1 评论 -
Python中以数组(numpy)的每一列画一段直线
说明:如果想以每行画一段直线,则使用转置(y1=y1.T)为每列画一段直线import numpy as npimport matplotlib.pyplot as plty1=np.random.randint(10,50,(10,3))plt.plot(y1)如图:...原创 2018-08-15 14:18:49 · 4832 阅读 · 0 评论 -
机器学习中回归模型对比
【1】普通线性回归:最小二乘法,使平方误差最小,适用于线性回归,容易受到异常值的影响。无异常值情况:有异常值情况:【2】岭回归:添加了标准化,排除了异常值的干扰【3】多项式回归,需要手动设置多项式次数如果数据点本身的模式中带有自然的曲线,而线性模型是不能捕捉到这一点的,来看看多项式模型的效果【4】决策树回归还有一种带AdaBoost算法的决策树回归器,效果更好...原创 2018-08-13 10:30:11 · 3098 阅读 · 0 评论 -
Python中的类为什么要实例化为一个对象才能使用?
import numpy as npfrom sklearn.preprocessing import StandardScalerdata = np.random.randint(2,6,(2,3))ss = StandardScaler() #类被实例化为对象std_data = ss.fit_transform(data)origin_data = ss.inverse_tra...原创 2018-06-29 15:54:40 · 6690 阅读 · 3 评论