win10下安装pyspark及碰到的问题

文章目录

  • 前言
  • 安装过程
    • Q1
  • 总结:

前言

最近由于工作需要,需要了解下pyspark,所以就在win10环境下装了下,然后在pycharm中使用的时候碰到了一些问题。整个过程可谓是一波三折。下面一一道来。

安装过程

安装过程就不详细说了,网上一搜一大堆,这里写下自己参考的博文:
https://blog.csdn.net/w417950004/article/details/77203501

安装好之后如何在pycharm中使用?
网上有文章说要在对应的文件中配置相关的spark_home地址等。
详情参考:https://www.cnblogs.com/hello-yz/p/9306099.html
其实没必要,因为我们在按照上面博文安装pyspark的过程中声明了相关的变量为全局变量,所以完全没必要在pycharm的文件中重复声明,相反这样做可能会带来一些负面效果。这时候,只需要将pyspark的代码放入pycharm中运行即可。但是中间会遇到一些问题下面一一来解答。

Q1

在pycharm中执行pyspark脚本报错:TypeError: namedtuple() missing 3 required keyword-only arguments: 'rename’

原因:pyspark和python版本不兼容。
解决办法:
参考:https://blog.csdn.net/u010916338/article/details/106108266

但是博主按照上面的解决方案降低python版本到3.5之后,问题依旧存在。
事情的过程:
背景:
博主之前就装的有python3.7版本的anaconda。所以为了不影响之前的3.7环境,选择了通过利用conda建虚拟环境的方法来新建3.5的虚拟环境,然后将pycharm的解释器更换为3.5的虚拟环境,来运行pyspark代码。but,问题依旧存在。(PS:很郁闷,不是说好的是版本的兼容的问题,我按照方案降了版本,为什么还是报上面的错误)无奈,以为是解决方案的问题,遂又google,baidu了一番。发现这个错位的原因就是spark和python版本兼容的问题,解决方案没问题。那到底是哪的原因呢?
为了解决心中的疑惑,博主走上了实验之路,先是在windows命令行以命令的形式利用python3.5解释器去运行脚本如: " ######\envs\python35 ######\pyspark_demo.py" ,依旧报上面的版本不兼容的错误。接下来在命令行,通过"activate py35"指令开启python3.5虚拟环境,然后执行“python ######\pyspark_demo.py”指令,运行pyspark程序竟然跑通了。。。一脸问号,这是为什么呢?为什么只有进入虚拟环境运行脚本才能跑通,在外部通过虚拟环境指令运行脚本就跑不通呢?
后面分析可能是spark包在被调用的时候,引用的系统默认的python环境,当时我的默认python环境为3.7(也就是你在命令行输入python指令,启动的是3.7版本)。所以如果你没有进入python3.5的虚拟环境,而是在外部执行pyspark程序的话,系统默认的python环境永远是3.7版本。但是当你激活python3.5的虚拟环境的时候,此时系统默认的python环境就是python3.5版本。
为了印证猜想,就在系统变量中将python3.5的虚拟环境变量声明到python3.7的前面,将其覆盖。
如下图所示:
在这里插入图片描述
此时系统默认python环境为3.5
在这里插入图片描述
此时再通过pycharm运行pyspark的时候,就通过了。
在这里插入图片描述

总结:

如果你是第一次装anaconda,也许不会碰到这样的问题,如果你装的anaconda是python3.6的版本也许也不会碰到这样的问题,但是如果你和我一样很不幸,装的是python3.7版本的anaconda,并且不想动之前的环境,创建了一个虚拟环境来玩,那么“恭喜你”,大概率会碰到这样的问题。
不过,不用头疼,解决问题的方法很多,就算不用这种方法,你还可以曲线救国,比如重装python低版本的anaconda等等。
不过还是得吐槽下,这个问题真恶心,哈哈。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/456336.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

解决AttributeError AttributeError: 'NoneType' object has no attribute 'filename'

原因忘记上传文件 表单需要加属性 enctype"multipart/form-data" 否则报错!AttributeError AttributeError: NoneType object has no attribute filename enctype"multipart/form-data是设置表单的MIME编码。默认情况,这个编码格式是ap…

SQLAlchemy()分页器paginate方法

Flask的数据分页示例 用法: 1,首先写数据获取的视图函数,就像这样: # 首页 blog_bp.route(/, endpointindex) def index():#获取页数page request.args.get(page,1)paginate Article.query.paginate(pageint(page),per_page3)…

开源中国 2014 年源创会年度计划

时光总是从敲代码的指尖不经意地滑过,转眼2014年已快过去一半,OSC依然心怀着最初的梦想。 源创会,oscer的线下快乐大本营,我们仍在继续...... 聆听技术大牛讲解最前沿的技术,和同道中人切磋IT秘籍,吃点心侃…

互联网金融行业申请评分卡(A卡)简介

文章目录前言基本概念1、信用违约风险的基本概念什么是信用违约风险:组成部分违约的主体个贷中常用的违约定义M0,M1,M2的定义2、申请评分卡的重要性和特性信贷场景中的评分卡申请评分卡的概念为什么要开发申请评分卡评分卡的特性 &#xff08…

Flask的csrf_token的用法

在flask当中,flask-wtf模块时携带csrf校验的,只是需要开启; 如果不开启校验就不需要校验,但是那样不安全。 Csrf是针对与post请求的跨域限制,get请求没有作用 csrf_token的开启 在flask中开启csrf保护 from flask_…

dotty编译器语法特性之一交叉类型,联合类型和文本单例类型

2019独角兽企业重金招聘Python工程师标准>>> ###翻译:http://dotty.epfl.ch/docs/reference/intersection-types.html #交叉类型 trait Resettable {def reset(): this.type } trait Growable[T] {def add(x: T): this.type } def f(x: Resettable &…

【转】Zookeeper 安装和配置

转自:http://coolxing.iteye.com/blog/1871009 Zookeeper的安装和配置十分简单, 既可以配置成单机模式, 也可以配置成集群模式. 下面将分别进行介绍. 单机模式 1. 配置 点击这里下载zookeeper的安装包之后, 解压到合适目录. 进入zookeeper目录下的conf子目录, 创建z…

一分钟精通Flask-Bootstrap的使用

要想在程序中集成Bootstrap,显然要对模板做所有必要的改动。不过,更简单的方法是使用一个名为Flask-Bootstrap 的Flask 扩展,简化集成的过程。 安装: Flask-Bootstrap 使用pip安装: pip install flask_bootstrap Fl…

linux生产环境下安装anaconda总结

前言: 工作中,常常要在新的linux生产服务器中安装自己的集成python环境,这种情况下有一点需要注意:不能覆盖生产服务器中的python环境(也就是自己的python环境要和系统的python环境分开)。一般情况下系统自…

FSF 称 DRM 被用于锁定、控制和监视用户

自由软件基金会正在督促美国政府废除DMCA中保护DRM的反规避条款。DMCA的1201条款禁止绕过DRM保护的内容和设备。 自由软件基金会的Donald Robertson在致函美国版权办公室的信(PDF)中指出,技术保护措施和数字限制管理(即DRM&#x…

改数据库表结构类型两种方法

alter table user change password password varchar(128) not null; alter table user modify column password varchar(128) not null;

申请评分卡(A卡)的开发过程(1)

前言: 本篇文章上接《申请评分卡简介》,有需要的童鞋可以参考下:https://blog.csdn.net/qq_16633405/article/details/107744921 下面介绍下A卡的开发步骤。 开发过程 1、评分卡模型开发步骤: 1、立项:场景&#…

E: 无法获得锁 /var/lib/dpkg/lock-frontend - open (11: 资源暂时不可用) E: 无法获取 dpkg 前端锁 (/var/lib/dpkg/lock-front

解决: E: 无法获得锁 /var/lib/dpkg/lock-frontend - open (11: 资源暂时不可用) E: 无法获取 dpkg 前端锁 (/var/lib/dpkg/lock-frontend),是否有其他进程正占用它? 方法: 重新启动虚拟机服务器 再在黑屏终端中重新尝试输入su…

聚类效果评估指标总结

前言 实际工作中经常会用到一些聚类算法对一些数据进行聚类处理,如何评估每次聚类效果的好坏?可选的方法有1、根据一些聚类效果的指标来评估;2、直接打点。今天就主要总结下这段时间了解的聚类效果评估指标。废话少说,直接上干货…

{%extends bootstrap/base.html%}的添加,使得其他block无法继承

仙说{%extends "bootstrap/base.html"%}用法: 在base.html中调用一次即可,并且 {%extends "bootstrap/base.html"%} 要放在 最后头!!最后头!最后头! base中不用再添加 {% block cont…

运用Nginx代理和UWSGI将Flask项目部署在Linux中 详细步骤

nginx: 安装可以参照的路径: http://nginx.org/en/linux_packages.html#Ubuntu 启动Nginx nginx [ -c configpath] 默认配置目录:/etc/nginx/nginx.conf 查看进程: ps -ef |grep nginx 控制Nginx nginx -s xxxstop 快速关闭quit …

机器学习算法之KNN

前言 KNN一般用于有监督的分类场景,除此之外,KNN在异常检测场景中也有应用,下面主要介绍下KNN在这两面的应用原理。 KNN做分类的原理 计算步骤如下: 1)算距离:给定测试对象,计算它与训练集中…

Supermap 组合单值专题图与标签专题图演示样例

效果图例如以下&#xff1a;单值专题图并显示每一个区域的相关文字信息 代码&#xff1a; <!DOCTYPE> <html> <head> <meta http-equiv"Content-Type" content"text/html; charsetutf-8" /> <title>单值专题图</title>…

[剑指Offer] 25.复杂链表的复制

1 /*2 struct RandomListNode {3 int label;4 struct RandomListNode *next, *random;5 RandomListNode(int x) :6 label(x), next(NULL), random(NULL) {7 }8 };9 */ 10 class Solution 11 { 12 public: 13 //在旧链表中创建新链表&#xff0…

Flask项目中应用七牛云存储

七牛云存储&#xff1a; https://developer.qiniu.com/kodo/sdk/1242/python 点击注册开通七牛开发者帐号 如果已有账号&#xff0c;直接登录七牛开发者后台&#xff0c;点击这里查看 Access Key 和 Secret Key pip install qiniu q Auth(Access Key,Secret Key) b…