python解释器路径
python项目解释器路径
用于配置python项目执行的python路径
比如,有的项目是运行的是系统python2.7下的环境;有的是3.4;有的项目使用的是virtualenv的python环境[python虚拟环境配置 - pycharm中的项目配置]
在pycharm > file > settings > project:pythonworkspace > project interpreter > 选择对应项目 > project interpreter中指定python解释器
pycharm中运行configuration有一个选项add content roots to pythonpath
选中后sys.path中会多一整个项目project的路径/media/pika/files/mine/python_workspace,里面的目录就被当成包使用,这样就可以通过from SocialNetworks.SocialNetworks引入不是python包的目录中的文件了。
不过最好使用sys.path.append(os.path.join(os.path.split(os.path.realpath(__file__))[0],"../.."))来添加,这样在pycharm外也可以运行不出错 。
pycharm中进行python包管理
pycharm中的项目中可以包含package、目录(目录名可以有空格)、等等
目录的某个包中的某个py文件要调用另一个py文件中的函数,首先要将目录设置为source root,这样才能从包中至上至上正确引入函数,否则怎么引入都出错:
SystemError: Parent module ‘‘ not loaded, cannot perform relative import
Note:目录 > 右键 > make directory as > source root
python脚本解释路径
ctrl + shift + f10 / f10 执行python脚本时
当前工作目录cwd为run/debug configurations 中的working directory
可在edit configurations > project or defaults中配置
console执行路径和当前工作目录
python console中执行时
cwd为File > settings > build.excution > console > pyconsole中的working directory
并可在其中配置
pycharm配置os.environ环境
pycharm中os.environ不能读取到terminal中的系统环境变量
pycharm中os.environ不能读取.bashrc参数
使用pycharm,无论在python console还是在module中使用os.environ返回的dict中都没有~/.bashrc中的设置的变量,但是有/etc/profile中的变量配置。然而在terminal中使用python,os.environ却可以获取~/.bashrc的内容。
解决方法1:
在~/.bashrc中设置的系统环境只能在terminal shell下运行Spark程序才有效,因为.bashrc is only read for interactive shells.
如果要在当前用户整个系统中都有效(包括pycharm等等IDE),就应该将系统环境变量设置在~/.profile文件中。如果是设置所有用户整个系统,修改/etc/profile或者/etc/environment吧。
如SPARK_HOME的设置[Spark:相关错误总结 ]
解决方法2:在代码中设置,这样不管环境有没有问题了
# spark environment settings import sys, os os.environ[‘SPARK_HOME‘] = conf.get(SECTION, ‘SPARK_HOME‘) sys.path.append(os.path.join(conf.get(SECTION, ‘SPARK_HOME‘), ‘python‘)) os.environ["PYSPARK_PYTHON"] = conf.get(SECTION, ‘PYSPARK_PYTHON‘) os.environ[‘SPARK_LOCAL_IP‘] = conf.get(SECTION, ‘SPARK_LOCAL_IP‘) os.environ[‘JAVA_HOME‘] = conf.get(SECTION, ‘JAVA_HOME‘) os.environ[‘PYTHONPATH‘] = ‘$SPARK_HOME/python/lib/py4j-0.10.3-src.zip:$PYTHONPATH‘
ycharm配置第三方库代码自动提示
Pycharm实用拓展功能
pycharm中清除已编译.pyc中间文件
选中你的workspace > 右键 > clean python compiled files
还可以自己写一个清除代码
pycharm设置外部工具
[python小工具 ]针对当前pycharm中打开的py文件对应的目录删除其中所有的pyc文件。如果是直接运行(而不是在下面的tools中运行),则删除E:\mine\python_workspace\WebSite目录下的pyc文件。
将上面的删除代码改成外部工具
PyCharm > settings > tools > external tools > +添加
Name: DelPyc
program: $PyInterpreterDirectory$/python Python安装路径
Parameters: $ProjectFileDir$/Oth/Utility/DelPyc.py $FileDir$
Work directory: $FileDir$
Note:Parameters后面的 $FileDir$参数是说,DelPyc是针对当前pycharm中打开的py文件对应的目录删除其中所有的pyc文件。
之后可以通过下面的方式直接执行
Note:再添加一个Tools名为DelPycIn
program: Python安装路径,e.g. D:\python3.4.2\python.exe
Parameters: E:\mine\python_workspace\Utility\DelPyc.py
Work directory 使用变量 $FileDir$
参数中没有$FileDir$,这样就可以直接删除常用目录r‘E:\mine\python_workspace\WebSite‘了,两个一起用更方便
代码质量
当你在打字的时候,PyCharm会检查你的代码是否符合PEP8。它会让你知道,你是否有太多的空格或空行等等。如果你愿意,你可以配置PyCharm运行pylint作为外部工具。
python2转python3最快方式
/usr/bin/2to3 -wn $FileDir$
这样在pycharm中打开某个文件,右键external tools > py2topy3就可以瞬间将当前文件所在目录下的所有py2转换成py3,是不是很机智!