python
文章平均质量分 58
python遇到的一些问题
一只勤奋爱思考的猪
爱记录、爱分享、爱学习、希望多多留下自己思考过疯狂过的痕迹!
展开
-
python3.8.8源码安装,import ssl报错
2、删除原有目录删除安装目录;----删除包之后还不行,因为此时执行python3还是可以的,证明没有删除成功,需要把bin目录下的删除掉;删除命令rm -rf /usr/bin/pip3rm -rf /usr/bin/python3rm -rf /usr/bin/python3.8验证源码安装命令178 cd Python-3.8.8.tgz179 tar -xvf Python-3.8.8.tgz180 cd Python-3.8.8181 ls182 vim ./Mo原创 2022-05-08 14:13:24 · 2183 阅读 · 0 评论 -
python并行调度spark任务
背景将实现某业务逻辑的pyspark代码翻译成sparksql,基于sparksql补充过去半年的历史数据(按天跑);核心点1)将pyspark翻译成sparksql;2)基于sparksql,补充过去半年的历史数据(按天跑);实现1)首先,pyspark翻译成spark sql,大部分直接翻译;基于原来共同的地方,可以缓冲一个cache表,后续不用多次计算;2)其次,翻译完sparksql之后,需要补充跑过去半年的数据;通常有几种方式:方式1,一天一天的轮询循环跑;方式2,并行跑;我尝试选原创 2021-05-16 12:50:21 · 1011 阅读 · 0 评论 -
递归与while循环的区别
1、引入说起循环,我们大多会想到“递归、迭代、遍历”等几个词,具体的含义请看本文附录。今天只结合具体例子说一说递归和while循环的比较。两者的代码比较问:求1+2+3+…+n的和,请用两种方法写出代码?答:递归代码: public static int Fun(int n){ if(n == 1){ return 1; } else { return n + Fun(n-1); } }转载 2020-06-22 23:07:43 · 1771 阅读 · 0 评论 -
时间复杂度与空间复杂度
目录问题背景算法效率(1)时间复杂度常数阶O(1)线性阶O(n)对数阶O(logN)线性对数阶O(nlogN)平方阶O(n²)(2)空间复杂度空间复杂度 O(1)空间复杂度 O(n)参考问题背景两个问题,假设都是最笨的循环方式:(1)单个字符比较(比如:“a”与“b”比较的时间复杂度是多少?(2)字符串比较 (比如:“abd”与“cdh”比较的时间复杂度是多少?目的:我想知道他俩的区别,去估算我代码的时间复杂度;测试了一下:在1000000次循环里面:大小为100000的单个字符串比较耗时:原创 2020-06-18 22:10:35 · 286 阅读 · 0 评论 -
python导入包以及Python程序执行顺序理解
http://codingpy.com/article/python-import-101/https://segmentfault.com/a/1190000009842139原创 2019-03-31 00:10:37 · 2358 阅读 · 0 评论 -
python import 导入的路径问题
前言Python相对导入与绝对导入,这两个概念是针对与两个包内(包含__init__.py文件的文件夹)的导入而言的。包内导入:就是包A的模块(.py文件)导入另一个包B的模块(py)文件。命令行与pycharm运行是的区别:命令行会按照下述方式搜索。而pycharm则会自动创建搜索路径,因此有很多时候pycharm下能成功运行的文件,放在命令行报导入包错误;Python import的...原创 2019-04-15 21:26:59 · 1218 阅读 · 3 评论 -
python的可迭代对象与迭代器
1、可迭代对象Iterable可迭代对象可直接用于for循环直接作用于for循环的数据类型有以下几种:一类是集合数据类型,如list、tuple、dict、set、str等;一类是generator,包括生成器和带yield的generator function。这些可以直接作用于for循环的对象统称为可迭代对象:Iterable。可以使用isinstance()判断一个对象是否是It...转载 2020-03-18 09:47:25 · 147 阅读 · 0 评论 -
python使用迭代器注意事项
问题背景看了段大牛的开源代码:“”“author='Kenneth Reitz',author_email='me@kennethreitz.org',url='https://github.com/kennethreitz/records',”“”def as_dict(self, ordered=False): """Returns the row as a dict...原创 2020-03-18 09:28:57 · 222 阅读 · 0 评论 -
python3中with语句的用法
python3中with语句用法(一)背景-用于文件处理在实际的编码过程中,有时有一些任务,需要事先做一些设置,事后做一些清理,这时就需要python3 with出场了,with能够对这样的需求进行一个比较优雅的处理,最常用的例子就是对访问文件的处理。1 初级文件处理1 f = open(r'c:\mytest.txt', 'r')2 data = f.read()3 f.c...转载 2020-03-16 14:10:44 · 893 阅读 · 0 评论 -
方法返回类的实例,可以继续调用类下面的其他方法,形如:is_cancel = f_d_do.is_cancel_maybe().get_or_else(False)
enterprise_code = u'9'的时候,会走正常预测,因为它有值not is_cancel def _is_normal_predict(f_d_do, prob_maybe): """ 符合正常预测条件 """ is_cancel = f_d_do.is_cancel_maybe().get_or_else(Fal...原创 2018-05-09 14:08:45 · 234 阅读 · 0 评论 -
代码重构
代码重构:重构前:if base_info_dto.result_code == BizConsts.DATA_STATE_SAIC_NONE or base_info_dto.result_code == BizConsts.DATA_STATE_NONE_DX_TIME: return FeatureTimeDealDo(result_code=base_info_...原创 2018-05-09 14:38:43 · 137 阅读 · 0 评论 -
rdd
dfkk2.rdd.map(lambda _ : Row([‘_1’],[‘2’],[‘3’],[‘_4’], [‘_5’],[‘6’],[‘7’],[‘_8’], [‘_9’],[‘10’],the_second_hy_map(([‘_11’]))).repartition(1).toDF().w...原创 2018-05-16 23:39:39 · 226 阅读 · 0 评论 -
转载--python返回函数的理解
最近接触python,看到了python中返回函数的概念,以前只接触过函数返回值,比如python就可以返回int,str,list,dict等等类型数据,这里要说的是python还支持返回函数。首先看看python支持返回函数的基本语法def f(): print 'call f()...' # 定义函数g: def g(): print 'cal...转载 2018-05-12 17:03:11 · 341 阅读 · 0 评论 -
对傅里叶变换的理解
很好的博客:知乎-傅里叶简单图形化解释,易懂,经典,必看, 自己对其中的理解: 参考浏览了一下,傅里叶推导的原理:傅里叶典型的变换-三角函数结合自己的理解初步是这样的:傅里叶变换的基本思想——任何一个信号,在时域上,总可以展开成无限个三角函数(正弦或余弦函数)的和;在频率上来看,由于三角函数可以写成指数形式,e-jwt这种形式,根据同频合并的原理,可以将时域的展开表达式进一步推导化...原创 2018-05-18 22:26:26 · 1348 阅读 · 0 评论 -
对多线程的学习
def exe_process(self, company_name, open_from, time_nodes): """ 多进程执行pre订阅的数据 :param company_name: 公司名 :return: """ mul_process_helper = MulProcessH...原创 2018-05-12 22:08:20 · 167 阅读 · 0 评论 -
问题:决策树tree.export_graphviz输出树中文显示为框框,无法正常解析
from sklearn import treefrom sklearn.externals.six import StringIOdot_data = StringIO()tree.export_graphviz(model_clf, out_file=dot_data, # doctest: +SKIP ...原创 2018-05-07 20:29:30 · 6797 阅读 · 0 评论 -
padas数据类型,train_test_split划分数据集时,padas数据类型的原因导致报错!!padas判断列类型,强制改变列类型,单独修改1列或者同时对多列进行修改!!!
示例,用在决策树前期数据准备的时候。运用train_test_split函数,如下: df = pd.read_csv(file_path) df_p = df[df['_c1'] == 1].head(389081) df_n = df[df['_c1'] == 2].head(389081) frames = [df_p, df_n] df = pd.c...原创 2018-05-07 20:57:59 · 1936 阅读 · 0 评论 -
决策树学习——基本原理,详细计算过程,预剪枝,后剪枝的计算方式以及思想,非常全面!!!
【机器学习速成宝典】模型篇06决策树【ID3、C4.5、CART】(Python版)维基百科——维基百科,比较权威,多看看,顺便可以学学英语!! min_samples_split(分类所需最小样本数)与min_samples_leaf(叶节点最小样本数)区别!! max_leaf_nodes:最大叶节点数! 参考知乎:机器学习各种算法怎么调参? 看官方文档:class BaseD...原创 2018-05-07 21:43:12 · 2171 阅读 · 0 评论 -
从pg里面导出数据////将数据导出到pg,不要在本地,在黑窗口里面,原因-思考???
sc@sc-All-Series:~$ psql -h 192.168.31.157 -p 5432 Password: psql: FATAL: password authentication failed for user "sc"FATAL: password authentication failed for user "sc&quo原创 2018-05-21 09:42:48 · 591 阅读 · 0 评论 -
spark通过行业代码找到行业
def string_to_int_01(x): try: return int(x) except: return 'nan'def string_to_int_02(x): try: return int(x) except: return 'NAN' def stastic_02(spark,...原创 2018-05-21 14:11:30 · 148 阅读 · 0 评论 -
python程序多进程运行时间计算/多进程写数据/多进程读数据
import timetime_start=time.time()time_end=time.time()print('time cost',time_end-time_start,'s')单位为秒,也可以换算成其他单位输出 注意写测试的时候,函数名要以test开头,否则运行不了。 多线程中的问题: 1)多线程存数据:def test_save_features_to_db(...原创 2018-05-15 10:18:01 · 4411 阅读 · 0 评论 -
多进程写文件
#方式2class TempMul(object): @staticmethod def run(): pool = ThreadPool(20) return pool.map(Temp_02.run_url, ['1', '2', '3', '4'])if __name__ == '__main__': pool = Thread...原创 2018-05-21 19:02:00 · 363 阅读 · 0 评论 -
杀死进程
查看进程sc@sc-All-Series:~$ lsof -i:19096COMMAND PID USER FD TYPE DEVICE SIZE/OFF NODE NAMEpython2.7 8783 sc 3u IPv4 844429 0t0 TCP *:19096 (LISTEN)python2.7 8783 sc 7u IPv6 8...原创 2018-05-22 15:59:47 · 269 阅读 · 0 评论 -
数据库sql语句学习
嵌套子查询: (1)select … from … where 子查询可以在where里面,也可以在from里面;因为他们后面跟的就是一组特定的关系,而我们子查询即sql语句就表达了一种关系;(2)with的用法 with table1(column1,column2) as select … from…where select … from table1 with是创建一个临时的关系...原创 2018-06-02 18:12:10 · 192 阅读 · 0 评论 -
代码大全- 第8章 防御式编程学习
第8章 防御式编程 断言——检查程序逻辑错误? 前条件:确保被调用的程序为真 后条件:确保调用的程序为真 防火墙:检测数据错误/对异常数据的处理、本层或者上层对异常的处理/可读性,try…catch,运用log标记/尽量让抛出异常符合当前层,而不是更低层。...原创 2018-06-02 23:29:48 · 174 阅读 · 0 评论 -
数据库创建主键约束名称不能跟表名一样,否则报错
数据库导出 需要用\copy,并且需要在本地用psql连接上去,不需要用use命令,不能再本地pg界面运行,注意多行时,分次间隔复制; 数据库创建主键约束名称不能跟表名一样,否则会报relation已经存在,删除表由显示table不存在,如下:CREATE TABLE public.t_add_shixin_predict_features( id VARCHAR(100) N...原创 2018-05-22 16:10:16 · 2049 阅读 · 0 评论 -
决策树的Python实现demo(一天一个小demo!)
#!/usr/bin/env python# -*- coding: utf-8 -*-# @createTime : 18-5-22 下午4:44# @author : nnimport numpy as npimport mathdata=[[0,1,0],[1,0,0],[0,1,0],[1,1,1]]print(type(data))data = np.array...原创 2018-05-22 19:47:10 · 651 阅读 · 0 评论 -
回调函数
回调函数什么是回调函数? (第一次听说回调函数的同学,请认真看下补课)编程分为两类:系统编程(system programming)和应用编程(application programming)。所谓系统编程,简单来说,就是编写库;而应用编程就是利用写好的各种库来编写具某种功用的程序,也就是应用。系统程序员会给自己写的库留下一些接口,即API(application programming...原创 2018-05-22 20:09:28 · 125 阅读 · 0 评论 -
多进程学习
#!/usr/bin/env python# -*- coding: utf-8 -*-# @createTime : 18-5-22 下午8:23# @author : mmimport multiprocessingimport threadingimport timefrom multiprocessing.dummy import Processdef f0(a...原创 2018-05-22 21:00:17 · 188 阅读 · 0 评论 -
df.withColumn
# df is a DataFramedef lowerCase(string): return string.strip().lower()lowerCaseUDF = udf(lowerCase, StringType())for (columnName, kind) in df.dtypes: if(kind == "string"): df = d...原创 2018-05-16 21:58:18 · 5303 阅读 · 0 评论 -
git删除workspace下面的xml
1、在项目还没有git add .之前,在.gitignore 文件中加入 .idea2、如果已经git add .了,再在.gitignore中加入.idea ,就已经没有用了。此时,需要运行命令 git rm --cached -r .idearm '.idea/inspectionProfiles/Project_Default.xml'rm '.idea/misc.xml'...转载 2018-05-28 09:29:39 · 1834 阅读 · 0 评论 -
第四章 中级数据库
权限: 1)直接对用户授权; 授权操作数据:查询、更新、插入、删除; 授权操作关系:删除关系表; 2)创建角色,对角色授权;角色授权有继承机制; 撤销授权 3)授权视图...原创 2018-06-04 21:28:26 · 133 阅读 · 0 评论 -
查看CPU占用率
查看系统cpu占用率 在跑一些程序,例如deep learning的时候,总是希望查看一下cpu、gpu、内存的使用率 1. cpu、内存使用top命令$ tophttp://bluexp29.blog.163.com/blog/static/33858148201071534450856/有一个更直观的监测工具,叫htopsudoapt−getinstallhtopsud...转载 2018-05-24 17:20:42 · 994 阅读 · 0 评论 -
本地上传到远程命令,以及spark的submit指令
sc@sc-All-Series:~/PycharmProjects$ scp -r risk-model scdata@192.168.31.10:/home/scdata/app/python/scdata@sc-bd-10:~/app/python/risk-model/cs_clean$ spark-submit --master spark://192.168.31.10:7077 ...原创 2018-05-24 17:22:17 · 1255 阅读 · 0 评论 -
区分类型type与编码chardet.detect(),以及中文字符的编码统一处理原理
**总结1:只有字符类型即str类型的才有编码,整数及其他没有编码,检测编码会报错总结2:根据编译环境自动为字符编码,通常,英文或数字会编码成ascii,中文会编码成utf-8总结3:加'u'表示Unicode编码,Unicode编码既包括utf-8,也包括ascii,未加u默认中文编码为'utf-8',加了u之后变成英文编码总结4:对于中文字符的处理——将字符转换成str,再判断str是...原创 2018-06-07 16:12:55 · 3863 阅读 · 2 评论 -
数据清洗过程中对字段类型的处理
def empty_deal_cnt(data): ''' 空表示没有,非空表示有 :param data: :return: ''' if isNone(data): data = 0 else: try: data = int(data) except Excepti...原创 2018-06-01 10:18:48 · 740 阅读 · 0 评论 -
hdfs保存csv文件,里面含有多行列标题,验证需要用header=False,否则,显示不了;
dfh1 = sqlContext.read.csv(myfeature_path + 'shixin_com_prob_hydm.csv', header=False) dfh1.show() dfh1.createOrReplaceTempView('base') print(dfh1.count()) res = sqlContext.sql(''' sele...原创 2018-06-01 17:32:00 · 1817 阅读 · 0 评论 -
pycharm下面git设置,git更新不了项目的原因
sc@sc-All-Series:~/PycharmProjects/risk-model$ git statusOn branch 4.0.0-devYour branch and 'origin/4.0.0-dev' have diverged,and have 2 and 5 different commits each, respectively. (use "git pull&quo原创 2018-06-08 18:55:17 · 5555 阅读 · 0 评论 -
代码重用性/组合/继承/接口/抽象类
软件重用 软件重用的重要方式除了继承之外还有另外一种方式,即:组合 组合指的是,在一个类中以另外一个类的对象作为数据属性,称为类的组合 组合与继承都是有效地利用已有类的资源的重要方式。但是二者的概念和使用场景皆不同, 1.继承的方式 通过继承建立了派生类与基类之间的关系,它是一种’是’的关系,比如白马是马,人是动物。 当类之间有很多相同的功能,提取这些共同的功能做成基类,用继承比较好,...转载 2018-06-24 16:10:17 · 332 阅读 · 0 评论 -
python中的命名的学习
类的参数: set_…(),set_命名里面包含设置的对象,将要设置的对象放在第一个位置, set与get的区别; 驼峰与下划线区别; 测试no_mock Risp_shixin_features,shixin放在中间,方便快捷键查到变量,因为大家都是Risp,只是中间的不同,开头都一样。...原创 2018-06-24 17:00:29 · 141 阅读 · 0 评论