Ubuntu12.04 安装PyCharm

原文地址 http://www.cnblogs.com/zhcncn/p/4027025.html

1. 下载

https://www.jetbrains.com/pycharm/download/#section=linux

选择Linux Tab,选择下载免费的Community Edition【1】。当前版本是3.4

2. 安装PyCharm

按照官网给出的安装指导【2】进行安装。

(1) Copy the pycharm-*.tar.gz to the desired installation location (make sure you have rw permissions for that directory)

$ cd Downloads/

(2)Unpack the pycharm-*.tar.gz using the following command: tar xfz pycharm-*.tar.gz

$ tar xfz pycharm-*.tar.gz

(3)Remove the pycharm-*.tar.gz to save disk space (optional)

$ rm  pycharm-*.tar.gz

(4)Run pycharm.sh from the bin subdirectory

$ cd pycharm-community-3.4.1/bin/

$ ./pycharm.sh

但是安装开始,出现如下错误:

ERROR: Cannot start PyCharm

No JDK found. Please validate either PYCHARM_JDK, JDK_HOME or JAVA_HOME environment variable points to valid JDK installation.

打开pycharm.ch文件查看,发现报错的地方在:

message()
{
  TITLE
="Cannot start PyCharm"
  if [ -t 1 ]; then
    echo "ERROR: $TITLE
$1"
  elif [ -n `which zenity` ]; then
    zenity --error --title="$TITLE" --text="$1"
  elif [ -n `which kdialog` ]; then
    kdialog --error --title "$TITLE" "$1"
  elif [ -n `which xmessage` ]; then
    xmessage -center "ERROR: $TITLE: $1"
  elif [ -n `which notify-send` ]; then
    notify-send "ERROR: $TITLE: $1"
  else
    
echo "ERROR: $TITLE
$1"
  fi
}

# ---------------------------------------------------------------------
# Locate a JDK installation directory which will be used to run the IDE.
# Try (in order): PYCHARM_JDK, JDK_HOME, JAVA_HOME, "java" in PATH.
# ---------------------------------------------------------------------
if [ -n "$PYCHARM_JDK" -a -x "$PYCHARM_JDK/bin/java" ]; then
  JDK="$PYCHARM_JDK"
elif [ -n "$JDK_HOME" -a -x "$JDK_HOME/bin/java" ]; then
  JDK="$JDK_HOME"
elif [ -n "$JAVA_HOME" -a -x "$JAVA_HOME/bin/java" ]; then
  JDK="$JAVA_HOME"
else
  JAVA_BIN_PATH=`which java`
  if [ -n "$JAVA_BIN_PATH" ]; then
    if [ "$OS_TYPE" = "FreeBSD" -o "$OS_TYPE" = "MidnightBSD" ]; then
      JAVA_LOCATION=`JAVAVM_DRYRUN=yes java | "$GREP" '^JAVA_HOME' | "$CUT" -c11-`
      if [ -x "$JAVA_LOCATION/bin/java" ]; then
        JDK="$JAVA_LOCATION"
      fi
    elif [ "$OS_TYPE" = "SunOS" ]; then
      JAVA_LOCATION="/usr/jdk/latest"
      if [ -x "$JAVA_LOCATION/bin/java" ]; then
        JDK="$JAVA_LOCATION"
      fi
    elif [ "$OS_TYPE" = "Darwin" ]; then
      JAVA_LOCATION=`/usr/libexec/java_home`
      if [ -x "$JAVA_LOCATION/bin/java" ]; then
        JDK="$JAVA_LOCATION"
      fi
    fi

    if [ -z "$JDK" -a -x "$READLINK" -a -x "$XARGS" -a -x "$DIRNAME" ]; then
      JAVA_LOCATION=`"$READLINK" -f "$JAVA_BIN_PATH"`
      case "$JAVA_LOCATION" in
        */jre/bin/java)
          JAVA_LOCATION=`echo "$JAVA_LOCATION" | "$XARGS" "$DIRNAME" | "$XARGS" "$DIRNAME" | "$XARGS" "$DIRNAME"`
          if [ ! -d "$JAVA_LOCATION/bin" ]; then
            JAVA_LOCATION="$JAVA_LOCATION/jre"
          fi
          ;;
        *)
          JAVA_LOCATION=`echo "$JAVA_LOCATION" | "$XARGS" "$DIRNAME" | "$XARGS" "$DIRNAME"`
          ;;
      esac
      if [ -x "$JAVA_LOCATION/bin/java" ]; then
        JDK="$JAVA_LOCATION"
      fi
    fi
  fi
fi

if [ 
-z "$JDK"
 ]; then
  message 
"No JDK found. Please validate either PYCHARM_JDK, JDK_HOME or JAVA_HOME environment variable points to valid JDK installation."

  exit 1
fi

 说明没有找到JDK location path。需要安装并配置JDK了。

3. 安装JDK

首先查了一下Ubuntu12.04是否支持JDK8,发现还是支持的。那就放心安装吧。

参照【3】的方法,通过设置源仓库的方式安装。(如果想手动安装,请参考【5】【6】)

Important: This PPA supports Ubuntu 14.04, 13.10, 12.04 and 10.04 as well as the corresponding Linux Mint versions. Ubuntu 13.04 and 12.10 are no longer supported by Canonical

(1)返回到Home目录:“~”,然后依次执行一下几条command

sudo add-apt-repository ppa:webupd8team/java
sudo apt-get update
sudo apt-get install oracle-java8-installer

安装过程中会跳出Oracle license对话框,选择接受就是了。

(2)安装完成后,运行"java -version"或者"javac -version"查看是否安装成功。如果得到类似如下的输出,表明安装成功了。

java -version

输出:

java version "1.8.0_20"
Java(TM) SE Runtime Environment (build 1.8.0_20-b26)
Java HotSpot(TM) 64-Bit Server VM (build 25.20-b23, mixed mode)

或者

javac -version

输出:

javac 1.8.0_20

 (3) 在【3】中说道,如果想automatically set up the Java 8 environment variables,可以使用下面的command:

sudo apt-get install oracle-java8-set-default

我使用该command后,在Terminal中运行 echo $JAVA_HOME,没有任何输出。看来是没起什么作用。有可能是在一开始配置完repository后,安装时使用该条命令,可以以后尝试一下。

UPDATED: 使用 sudo apt-get install oracle-java8-set-default,测试echo $JAVA_HOME,仍然是没有$JAVA_HOME环境变量的。还是需要手动设置。

由于一些程序在运行时可能默认需要 $JAVA_HOME 环境变量,因此还是需要设置一下环境变量的。

4. 配置$JAVA_HOME 环境变量

参考【4】中 Setting the "JAVA_HOME" environment variable 一节进行设置。

(1)Find out the path of your Java installation:

sudo update-alternatives --config java

 它将返回类似如下的结果,列出了本机所安装的所有Java运行时环境JRE。(共有2个:JDK7和OpenJDK6,0和2是同一个,auto mode和manual mode的差别)

There are 2 choices for the alternative java (providing /usr/bin/java).

Selection    Path                                            Priority   Status
------------------------------------------------------------
* 0            /usr/lib/jvm/java-7-oracle/jre/bin/java          1062      auto mode
           /usr/lib/jvm/java-6-openjdk-amd64/jre/bin/java   1061      manual mode
           /usr/lib/jvm/java-7-oracle/jre/bin/java          1062      manual mode

Press enter to keep the current choice[*], or type selection number:

对应的各个JRE的 安装路径分别为:

0. /usr/lib/jvm/java-7-oracle

1. /usr/lib/jvm/java-6-openjdk-amd64

2. /usr/lib/jvm/java-7-oracle

在我本机 执行 sudo update-alternatives --config java 的结果为:


Selection    Path                                     Priority   Status
------------------------------------------------------------
  0            /usr/lib/jvm/java-8-oracle/jre/bin/java   1         auto mode
* 1            /usr/lib/jvm/java-8-oracle/jre/bin/java   1         manual mode

Press enter to keep the current choice[*], or type selection number:

可见只安装了一个Java环境: JDK8。它对应的安装路径为:

/usr/lib/jvm/java-8-oracle

(2)编辑/etc/environment文件

sudo nano /etc/environment

复制上面的路径 /usr/lib/jvm/java-8-oracle,添加如下一行

JAVA_HOME="/usr/lib/jvm/java-8-oracle"

(3) Reload该文件,使之立即生效,而不必注销并重新登录

source /etc/environment

(4)使用下面的命令测试

echo $JAVA_HOME

会输出刚才所设置的路径 /usr/lib/jvm/java-8-oracle。

5. 再次安装PyCharm

(1)cd到Downloads/pycharm-community-3.4.1/bin/目录,执行./pycharm.sh。询问是否导入settings,选择不导入->OK.

image

(2) 初始设置,保持默认->OK.

575D0ZC`9]VL5A8A@C)%)U8

(3) 创建一个Launcher脚本,需要输入密码。

image

(4)出现下面的画面,表明安装成功了。

]0RBN}ANEVT{8(BEG]Z{P0I

(5) Create New Project,创建一个测试工程,解释器默认选择了Python2.7。

`H2I[1FUMP~A`J}UQ``]%GG

然后在新创建的工程上:点右键->New->Python File, 创建一个新的文件Py01,写代码,点Run按钮->Run Py01运行。

6. 设置Ubuntu下Pycharm的快捷启动方式

在Ubuntu下,每次都要找到 pycharm.sh所在的文件夹,执行./pycharm.sh,非常麻烦。最好能创建一个快捷方式。【7】

Ubuntu的快捷方式都放在/usr/share/applications,首先在该目录下创建一个Pycharm.desktop

$ sudo gedit /usr/share/applications/Pycharm.desktop

然后输入以下内容,注意Exec和Icon需要找到正确的路径

复制代码
[Desktop Entry]
Type=Application
Name=Pycharm
GenericName=Pycharm3
Comment=Pycharm3:The Python IDE
Exec="/XXX/pycharm-community-3.4.1/bin/pycharm.sh" %f
Icon=/XXX/pycharm-community-3.4.1/bin/pycharm.png
Terminal=pycharm
Categories=Pycharm;
复制代码

然后双击打开,再锁定到启动器就好了.

6. 个人设置

提示一下,pycharm中的设置是可以导入和导出的,file>export settings可以保存当前pycharm中的设置为jar文件,重装时可以直接import settings>jar文件,就不用重复配置了。

file -> Setting ->Editor

1. 设置Python自动引入包,要先在 >general > autoimport -> python :show popup

     快捷键:Alt + Enter: 自动添加包

2. “代码自动完成”时间延时设置

  > Code Completion   -> Auto code completion in (ms):0  -> Autopopup in (ms):500

3. Pycharm中默认是不能用Ctrl+滚轮改变字体大小的,可以在〉Mouse中设置

4. 显示“行号”与“空白字符”

  > Appearance  -> 勾选“Show line numbers”、“Show whitespaces”、“Show method separators”

5. 设置编辑器“颜色与字体”主题

  > Colors & Fonts -> Scheme name -> 选择"monokai"“Darcula”

  说明:先选择“monokai”,再“Save As”为"monokai-pipi",因为默认的主题是“只读的”,一些字体大小颜色什么的都不能修改,拷贝一份后方可修改!

  修改字体大小

> Colors & Fonts -> Font -> Size -> 设置为“14”

6. 设置缩进符为制表符“Tab”

  File -> Default Settings -> Code Style

  -> General -> 勾选“Use tab character”

  -> Python -> 勾选“Use tab character”

  -> 其他的语言代码同理设置

7. 去掉默认折叠

  > Code Folding -> Collapse by default -> 全部去掉勾选

8. pycharm默认是自动保存的,习惯自己按ctrl + s  的可以进行如下设置:
    > General -> Synchronization -> Save files on frame deactivation  和 Save files automatically if application is idle for .. sec 的勾去掉

    > Editor Tabs -> Mark modified tabs with asterisk 打上勾

9.>file and code template>python scripts

#!/usr/bin/env python
# -*- coding: utf-8 -*-
"""
__title__ = '$Package_name'
__author__ = '$USER'
__mtime__ = '$DATE'
# code is far away from bugs with the god animal protecting
    I love animals. They taste delicious.
              ┏┓      ┏┓
            ┏┛┻━━━┛┻┓
            ┃      ☃      ┃
            ┃  ┳┛  ┗┳  ┃
            ┃      ┻      ┃
            ┗━┓      ┏━┛
                ┃      ┗━━━┓
                ┃  神兽保佑    ┣┓
                ┃ 永无BUG!   ┏┛
                ┗┓┓┏━┳┓┏┛
                  ┃┫┫  ┃┫┫
                  ┗┻┛  ┗┻┛
"""

10 python文件默认编码

File Encodings> IDE Encoding: UTF-8;Project Encoding: UTF-8;

11. 代码自动整理设置

这里line breaks去掉√,否则bar, 和baz会分开在不同行,不好看。

File -> Settings -> appearance

1. 修改IDE快捷键方案

  > Keymap

1) execute selection in console : add keymap > ctrl + enter

  系统自带了好几种快捷键方案,下拉框中有如“defaul”,“Visual Studio”,在查找Bug时非常有用,“NetBeans 6.5”,“Default for GNOME”等等可选项

因为“Eclipse”方案比较大众,个人用的也比较多,最终选择了“Eclipse”。

  还是有几个常用的快捷键跟Eclipse不一样,为了能修改,还得先对Eclipse方案拷贝一份:

  (1).代码提示功能,默认是【Ctrl+空格】,现改为跟Eclipse一样,即【Alt+/】

  Main menu -> code -> Completion -> Basic -> 设置为“Alt+/”

  Main menu -> code -> Completion -> SmartType -> 设置为“Alt+Shift+/”

  不过“Alt+/”默认又被

  Main menu -> code -> Completion -> Basic -> Cyclic Expand Word 占用,先把它删除再说吧(单击右键删除)!

  (2).关闭当前文档,默认是【Ctrl+F4】,现改为跟Eclipse一样,即【Ctrl+W】

  Main menu -> Window -> Active Tool Window -> Close Active Tab -> 设置为 “Ctrl+F4”;
  Main menu -> Window -> Editor -> Close -> 设置为 “Ctrl+W”;

2.设置IDE皮肤主题

 

 > Theme -> 选择“Alloy.IDEA Theme”

  或者在setting中搜索theme可以改变主题,所有配色统一改变

File > settings > build.excution

每次打开python控制台时自动执行代码

> console > pyconsole

import sys
# print('Python %s on %s' % (sys.version, sys.platform))
sys.path.extend([WORKING_DIR_AND_PYTHON_PATHS])
import  os
print('current workdirectory : ', os.getcwd() )
import  numpy as  np
import  scipy as sp
import  matplotlib as mpl

如果安装了ipython,则在pyconsole中使用更强大的ipython

> console

选中use ipython if available

这样每次打开pyconsole就会打开ipython

Note: 在virtualenv中安装ipython: (ubuntu_env) pika:/media/pika/files/mine/python_workspace/ubuntu_env$pip install ipython


File > settings > Languages & Frameworks

如果在项目设置中开启了django支持,打开python console时会自动变成打开django console,当然如果不想这样就关闭项目对django的支持:

如果打开支持就会在 settings > build.excution > console下多显示一个django console:

Django console设置如下

import sys
print('Python %s on %s' % (sys.version, sys.platform))
import django
print('Django %s' % django.get_version())
sys.path.extend([WORKING_DIR_AND_PYTHON_PATHS])
if 'setup' in dir(django): django.setup()
import django_manage_shell; django_manage_shell.run(PROJECT_ROOT)

File > settings > Project : initial project

project dependencies > LDA > project depends on these projects > 选择sim_cluster就可以在LDA中调用sim_cluster中的包

7.pycharm配置python解释器路径

python项目解释器路径

用于配置python项目执行的python路径

比如,有的项目是运行的是系统python2.7下的环境;有的是3.4;有的项目使用的是virtualenv的python环境[python虚拟环境配置 - pycharm中的项目配置]

在pycharm > file > settings > project:pythonworkspace > project interpreter > 选择对应项目 > project interpreter中指定python解释器

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

并可在其中配置

8. Pycharm实用功能

pycharm中进行python包管理

pycharm中的项目中可以包含package、目录(目录名可以有空格)、等等

目录的某个包中的某个py文件要调用另一个py文件中的函数,首先要将目录设置为source root,这样才能从包中至上至上正确引入函数,否则怎么引入都出错:

SystemError: Parent module '' not loaded, cannot perform relative import

Note:目录 > 右键 > make directory as > source root

pycharm中清除已编译.pyc中间文件

选中你的workspace > 右键 > clean python compiled files

原文参考 http://blog.csdn.net/pipisorry/article/details/39909057

原文地址:https://www.cnblogs.com/hester/p/5636556.html