1. 问题背景

使用Pycharm连接远程服务器端pipenv虚拟环境的python解释器,运行python spark脚本时报错如下错误:

2018-09-12 23:56:00 ERROR Executor:91 - Exception in task 0.0 in stage 0.0 (TID 0)

org.apache.spark.SparkException:

Error from python worker:

/usr/bin/python: can't decompress data; zlib not available

PYTHONPATH was:

/home/kangwang/.local/share/virtualenvs/pyspark-C8JL9jUk/lib/python3.5/site-packages/pyspark/python/lib/pyspark.zip:/home/kangwang/.local/share/virtualenvs/pyspark-C8JL9jUk/lib/python3.5/site-packages/pyspark/python/lib/py4j-0.10.7-src.zip:/home/kangwang/.local/share/virtualenvs/pyspark-C8JL9jUk/lib/python3.5/site-packages/pyspark/jars/spark-core_2.11-2.3.1.jar:/home/kangwang/.pycharm_helpers/pycharm_matplotlib_backend:/home/kangwang/myproject/pyspark

java.io.EOFException

at java.io.DataInputStream.readInt(DataInputStream.java:392)

2. 问题分析

我是用pipenv在个人目录 myproject/pyspark下创建的虚拟环境,用来存放pyspark工程,其中python3.5解释器的安装路径为下面所示:

根据报错信息,可能是缺少相关依赖包,根据这篇博客https://blog.csdn.net/iejtyq/article/details/64438398 的做法,发现问题并没有得到解决,继续观察报错信息,发现其中的python解释器路径与我虚拟环境里的路径不一致,所以会不会是解释器的问题了呢?

在服务器的虚拟环境下按以下方式执行test.py文件,发现并无报错。由此,结合上面报错信息,可知报错原因是Pycharm在Run test.py 时并没有成功使用虚拟环境下的python解释器。

3. 解决办法

把虚拟环境下的python解释器加到pycharm中.py脚本的环境变量中,即 PATH=/home/kangwang/.local/share/virtualenvs/pyspark-C8JL9jUk/bin:$PATH

具体步骤为1~7步:

以上,就是这个脚本的环境变量配置过程。

如果工程下的脚本都在服务器同一个虚拟环境下运行,采用上面那样一个一个脚本配置环境变量的方法会很繁琐,因此,可对整个工程下的环境变量进行设置:

注意:工程下的环境变量的设置后,在该工程下创建新的.py文件时会自动添加已有的环境变量配置。然而,当重启Pycharm并再次进去该工程下创建新的.py文件时,之前设置的工程下的环境变量将失效,即不会保存。所以,在重启pycharm后,还需要再次重复上面8~15步。

python xmxl 无法启动_/usr/bin/python: can't decompress data; zlib not available 的异常处理相关推荐

  1. python xmxl 无法启动_问题引发由于与GI相关的python脚本中的错误,Gnome终端无法启动...

    问题引发 运行gnome-terminal时,出现以下错误: 这对我来说似乎很奇怪,因为该脚本位于python 3.4安装中,但正在调用print就像是一个python2脚本一样(这就是为什么会发生错 ...

  2. #!/usr/bin/env python与#!/usr/bin/python

    问: 最近在学习Python,有个问题向高手们求解 #!/usr/bin/env python到底有什么作用?有人说只有在UNIX类的系统下才有意义.是不是在windows下就没任何作用呢?它与#!/ ...

  3. rpmbuild告警mangling shebang in xxx from /bin/python to /usr/bin/python/python2.

    rpmbuild告警mangling shebang in xxx from #!/bin/python to #!/usr/bin/python/python2. This will become ...

  4. python #!/usr/bin/python作用

    #!/usr/bin/python 指定用什么解释器运行脚本以及解释器所在的位置 # -*- coding: utf-8 -*- 用来指定文件编码为utf-8的 PEP 0263 -- Definin ...

  5. 【转载】关于Python脚本开头两行的:#!/usr/bin/python和# -*- coding: utf-8 -*-的作用 – 指定文件编码类型...

    下面的内容来自:http://www.cnblogs.com/blueskylcc/p/5332642.html, 对方也是转的,不过没有找到转载的出处: 1.#!/usr/bin/python 是用 ...

  6. ubuntu下,py2,py3共存,/usr/bin/python: No module named virtualenvwrapper错误解决方法

    2019独角兽企业重金招聘Python工程师标准>>> ubuntu下,py2,py3共存 运行virtualenvwrapper会报错如下: /usr/bin/python: No ...

  7. python学习干货教程(5):#!/usr/bin/python

    首先,只应用于类unix系统中. #!/usr/bin/python :相当于python的绝对路径,是告诉操作系统执行这个脚本的时候,调用/usr/bin下的python解释器: #!/usr/b ...

  8. python中bin是什么意思_Python之一、#!/usr/bin/python到底是什么意思

    关于脚本第一行的 #!/usr/bin/python 的解释,相信很多不熟悉 Linux 系统的同学需要普及这个知识,脚本语言的第一行,只对 Linux/Unix 用户适用,用来指定本脚本用什么解释器 ...

  9. 每天学习python 30分钟 -了解python - 看懂#!/usr/bin/python

    文章目录 看懂#!/usr/bin/python (2021/6/16) 当一件事情,只有迈出了第一步,才会有第二步,而踏出这第一步是非常重要的.今天起,将决定学习python,每天30分钟,一天高效 ...

最新文章

  1. 十二、进程的同步与互斥
  2. Android中下载进度条格式,Android开发如何实现文件下载进度条
  3. Asp.net 导入Excel(服务器不带Office)
  4. 空服务器安装linux,debian服务器linux服务器web建站搭建linux服务器之Debian安装
  5. JavaScript浏览器的对象
  6. 网站导航颜色停留_做好这几点是建设营销型网站的关键
  7. AWVS/Nessus/Burpsuite的简单使用
  8. CSS3选择器:nth-child和:nth-of-type之间的差异的那些事儿
  9. python内置函数详解总结篇_Python内置函数详解——总结篇
  10. 单点登录解决方案-CAS
  11. LeetCode 234 Palindrome Linked List
  12. 大数据-实时推荐系统最主流推荐系统itemCF和userCF视频教程下载
  13. apollo 部署 使用
  14. iphone android传照片大小,iPhone竟然可以传文件到安卓机?99%的人都不知道
  15. 原型与继承学习笔记3
  16. 苹果cmsv10精仿好看的挖片网免费自适应简约模板
  17. 从软件测试转行做前端,转行软件测试或者前端开发有前途么?
  18. JS验证邮箱格式、信用码、税号和注册号
  19. 3D动画展示--3D图片旋转展示
  20. abb机器人工具坐标系设定方式_实用 | ABB机器人如何设定工具坐标系?

热门文章

  1. 退出python命令行-在cmd命令行里进入和退出Python程序的方法
  2. python工作招聘-python爬虫 智联招聘 工作地点
  3. 自学python后能干什么-学习python后能做哪方面的工作
  4. python可以自学吗-大家觉得自学python多久能学会?
  5. python在日常工作处理中的应用-记 Python 在实际工作中的第一次应用
  6. python处理excel表格实例-python读写Excel表格的实例代码
  7. python将数字转变为中文读法-python中将阿拉伯数字转换成中文的实现代码
  8. python语言入门u-Jupyter笔记-Python语法基础(U.1)
  9. python使用缩进作为语法边界一般建议怎样缩进-Python基础自测挑战题
  10. java和python哪个好学-Java VS Python 应该先学哪个?