PyCharm Professional 2018 for Mac是一款功能强大且用户友好的IDE(集成开发环境的简称),构建在IntelliJ平台之上,并且从一开始就设计为Python开发的一体化工具。今天小编为您带来的教程旨在通过使用PyCharm(Python IDE)以及用于高效开发的完整工具集,逐步引导您创建,运行和调试简单的Python项目。希望对您有所帮助!
0 v* w& V3 t# n8 M; c: x& E在你开始之前" n% g1 [% k  W
; D" t( i# e4 ?2 m4 x; L
确保:
! }( R8 K% N( F' @
    # D& C7 B5 g% P4 o+ X  v5 I
  • 您正在使用PyCharm 2.7或更高版本
    & d% T! f& O0 x1 }0 v
  • 至少有一个Python解释器,版本从2.4到3.3已正确安装在您的计算机上。2 z( H6 q, ~  l9 R( e/ s
启动PyCharm/ K4 N, q. \$ |
  ~2 L8 i! X8 \3 K1 _) A
根据您的操作系统,有很多方法可以启动IDE。9 l$ q3 N3 U4 b1 V9 d! S
    ; ?* Q; @/ ?7 J( g+ G0 K9 q+ Z2 P
  • 如果您有桌面快捷方式图标 ,只需双击它。
    - y2 X/ Q1 W. X& ^
  • 在PyCharm安装的bin目录下,双击pycharm.exe或pycharm.bat(Windows)或pycharm.sh(MacOS和Linux)。  x* m7 F0 t+ z/ W* U& O" t( ~
PyCharm启动并显示欢迎屏幕:
  U/ @* Q- v+ ^1 [! U2 E5 N& Y8 e% d6 `7 P6 f6 o% a
在PyCharm中创建一个简单的Python项目
. W: B, F6 q0 {! D0 M% G0 b4 O! z; v# v, T, }
要创建新项目,请单击“ 创建新项目 ”链接。您将看到“ 创建新项目”对话框,您必须在其中定义新项目的所有必要设置。: C  n9 e& H2 c- `% K2 D
请注意,您可以随时创建新项目...为此,请使用主菜单上的文件→新建项目。
) V/ v" c9 L: Q3 Q% t4 h) [) q& k3 h' M8 W7 C" T3 O. |
首先,指定项目名称 - 让它成为MySimplePythonApplication。请注意,PyCharm默认建议项目位置。您可以接受默认位置,也可以单击浏览按钮找到您选择的合适位置。
$ h% Q9 G& l* M( H0 m接下来,选择项目类型。PyCharm建议了几个项目模板,用于开发各种类型的应用程序(Django,Google AppEngine等)。当PyCharm从项目模板创建一个新项目时,它会生成相应的目录结构和特定文件。2 Z7 z5 V. ]8 S- T
但是,我们的任务是为Python创建一个项目。在这种情况下,让我们选择Empty项目类型- 它最适合普通的Python编程。在这种情况下,PyCharm不会生成任何特殊文件或目录。  ~+ _) t3 t6 J1 i7 k
最后,让我们选择一个Python解释器。如您所见,PyCharm通知您尚未选择Python解释器。由于您可以使用至少一个Python解释器,因此我们将其定义为项目解释器。* r0 X$ Q+ f# A& j5 M* P
为此,请单击“ 解释器”字段旁边的“浏览”按钮。在Python Interpreters对话框中,单击?,选择Local ...,然后从文件系统中选择所需的解释器:
1 g5 T& J0 G+ g8 A6 q$ k1 J: n9 I1 d, \; g' d$ R
完成所有必要的设置后,“ 确定”按钮将变为启用状态 - 因此单击它以使项目准备就绪。
# k, k* z3 B+ ?探索和配置项目结构
/ M2 |/ k$ o1 }( x" U  C, J9 M0 Y( t) d& T" K; Q4 s
您可以在“ 项目”工具窗口中查看初始项目结构:7 ^! `& j" d1 V# p6 A( z
0 v$ P0 x4 F0 z2 w3 o
如您所见,该项目仅包含项目根目录,以及您在“ 外部库”节点下指定的Python解释器。
$ L3 K' p  f& p, y. A接下来,让我们更详细地探索和配置项目结构:单击设置主工具栏,然后选择Project Structure页面:
: o8 d5 W7 ^0 ~' q  ~  I0 j
; Y2 U& W! H; x在项目根目录下,你会看到.idea目录 - 它包含反映项目结构的MySimplePythonApplication.iml文件,以及几个XML文件,每个文件都负责自己的一组设置,可以通过它们的名称识别:encodings.xml,vcs .xml 等。请注意.idea目录在Project工具窗口中不可见。6 d+ ?- I; p" V* W0 P6 u6 k
接下来让我们添加一个源根,实际执行所有工作。在同一个“ 项目结构”页面中,右键单击项目根目录,然后在上下文菜单中选择“ 新建文件夹 ”:
, e/ k* S" c/ _( ]" Z8 v
7 N. k) G& I! h( \接下来,键入目录名称:
- _. A* ?8 |6 o7 y. L
/ W5 e4 O# i. }# o4 ]: I最后,让我们将此目录标记为源根:选择src目录,然后单击文件夹- 您会看到src目录现在标有文件夹图标。+ M* @6 r+ C' g/ d
单击“ 确定”以应用更改并关闭“ 设置/首选项”对话框。5 G2 Z- q7 S' d5 i8 S' v
请注意,实际上此步骤是可选的。您只需在项目根目录下创建一个文件,它就会被视为源文件,因为默认情况下项目根目录是源根目录。' U) Y* e9 b5 `# E4 f" }; p8 @9 ^
创建一个Python类" v1 `, d+ |% X) r" O* Y8 O. J

7 V0 w( j" f) N2 M- ~$ k在项目工具窗口中选择src目录,然后按Alt + Insert:/ ]0 R& r' L) b1 ]
6 M1 W# {5 N+ v% g
从弹出窗口中选择Python文件选项,然后键入新文件名(Solver):* Q& P! e" s% f4 X  }, R
8 M& `& z; P6 J! o9 c$ g# E3 }
PyCharm创建一个新的Python文件并打开它进行编辑:4 j6 J: A4 Q3 Y

9 ~9 |$ ~" ^# {9 p编辑源代码
6 N, W, `3 `, P7 X5 i
% E( k/ h: S3 H) S, o! M8 j& e, ]我们先来看看我们刚刚生成的Python文件。存根只包含两行:
. d" G% u1 l  |8 c+ ]* i: ^
_author_ = 'wombat'
# @* v% R. \* Y_project_ = 'MySimplePythonApplication'4 [& C* Z, u) ]9 ]
由于Python文件是由文件模板生成的,因此PyCharm替换了实际值而不是预定义变量 $ PROJECT_NAME和$ USER。
2 Q! n3 X3 [( Z2 H8 k. S: W现在让我们继续创建一些有意义的内容 - 一个简单的应用来解决二次方程。4 C- K/ F' ~8 [, D$ \& l# P7 E% C
当你开始打字的时候,你就会明白PyCharm就像一对程序员,看着你的肩膀并提出正确的选择。例如,您想要创建一个Python类。当您刚开始输入关键字时,会出现一个建议列表:
: }0 t8 \9 t7 I9 j( `; q. V0 O6 J/ e  k( r! x* D
选择关键字class并键入类名称(Solver)。PyCharm立即通知你有关缺失的冒号,然后预期缩进:$ d$ d0 p1 Z; {8 c) U

& U3 V+ g1 q0 K) I请注意右侧排水沟中的错误条纹。将鼠标指针悬停在错误条带上,PyCharm会显示一个带有详细说明的气球。由于PyCharm即时分析您的代码,结果会立即显示在右侧排水沟顶部的检查指示器中。这个检查指示就像交通灯一样:当它是绿色时,一切都很好,你可以继续你的代码; 黄灯表示一些小问题,但不会影响编译; 但是当灯光变红时,就意味着你有一些严重的错误。
, j4 @& h! S. w8 M4 P  {. l! a4 o' y9 `让我们继续创建函数'demo':当你只输入左大括号时,PyCharm会创建整个代码构造(强制参数'self',右大括号和冒号),并提供适当的缩进:
+ Z8 q- D# A8 h4 k7 P/ i8 |) V" P  g2 w2 X2 ]
在键入时请注意,未使用的符号显示为灰色:
2 I) S) w$ i" J. ]5 T3 e: }2 R# y7 t1 a7 W8 n; l( @+ N8 I7 g
一旦计算出判别式,就会像往常一样进行渲染。接下来,要注意未解决的参考'数学'。PyCharm用红色曲线突出显示它,并显示红色灯泡。% n6 x/ A8 c: J3 K  e
让我们简要介绍一下PyCharm关于意图行动和快速修复的概念。当你编写代码时,有时建议修改代码结构 - 在这种情况下,PyCharm显示一个黄色灯泡。但是,如果PyCharm遇到错误,它会显示红灯泡。
5 V7 b9 I6 Y9 o: y  [- x$ ]在任何一种情况下,要查看PyCharm建议您做什么,请按Alt + Enter - 这将显示建议列表,在我们的示例中包含几个可能的解决方案:1 p/ _- R# O- ?7 N9 {
. ^! H5 F9 n+ G5 |* V
我们选择导入数学库。Import语句将添加到Solver.py文件中。接下来,计算二次方程的根,并打印出来,最后,让我们调用类Solver的函数演示:, U  H: t1 K$ l" I9 L4 o( w
importmath) N0 A, p; v% D8 Y' r; q( ^
- u% |, A) n8 p4 P' S2 q( C7 ]
_author_ = 'wombat'" Z/ }# F  L0 [7 J- ^
_project_ = 'MySimplePythonApplication'; D5 N3 D3 J1 T3 `; D. c/ n

: o2 p* j' i) H" `7 uclassSolver:
6 y- \$ y  S2 ]) ]# s8 e* y. P5 ]$ ?) V def demo(self):% Z: ?9 a/ B# a* c/ M
: U6 F4 r  d: \3 s5 c- N
a = int(input("a "))
5 U9 x# X+ L3 U: T b = int(input("b "))# \; H! j- Z/ m0 D' e
c = int(input("c ")): N9 o; D; K+ x% @& ^
d = b ** 2- 4* a * c
; e' a  X2 h' P9 f, _0 f/ \4 h disc = math.sqrt(d)1 \- b+ c) V3 Z7 P
root1 = (-b + disc) / (2* a)6 G9 q! K2 u7 ]1 l) }% p4 v
root2 = (-b - disc) / (2* a)
# u  C) A' }) |, w  [7 F7 l5 E print(root1, root2)* X* E3 E& P. ]' V- ]
Solver().demo()
( p- C1 Z' Y7 c3 X9 W. s
然后按Ctrl + Shift + F10运行脚本。控制台将显示在“ 运行”工具窗口中。在此控制台中,您必须输入a,b和c值,并期望看到结果。, k+ g2 u& c$ e8 z- o
糟糕... PyCharm报告运行时错误:5 x* ]/ N2 Y/ U" e
$ s+ U# j+ n3 d, o
似乎有些分析是可取的,所以让我们确保radicand'd'是非负的,并在它为负时报告错误。为此,选择判别计算语句,然后按Ctrl + Alt + T(代码→环绕):
* L! Q: l* {; p/ r2 P/ _% t" Q- J+ h2 P" V
PyCharm创建一个stub'if'结构,让你完成填充正确内容的任务。最后,让整个计算重复多次是很好的,所以让我们再次使用'Surround with'动作:选择函数演示的整个主体并用while环绕它。您最终会得到如下代码:3 q, {- I0 A& G3 |# c
importmath9 c- l  h. }, q; s  N/ K6 c" y1 O

% w+ J$ G. Q+ [) N3 D  t_author_ = 'wombat'/ w4 x9 ?# o6 J# q# L" u
_project_ = 'MySimplePythonApplication'' V: d+ e0 Y9 Q# M
8 k4 p+ @! ]( y
classSolver:; D3 L6 N4 c) x9 M
def demo(self):$ V: N% L! z3 z7 ]) T& E+ Q/ ~* \
whileTrue:
3 U" h  Y2 C) B a = int(input("a "))% B4 x6 y/ @3 S& j: H2 D
b = int(input("b "))1 p: l: T/ ]) E
c = int(input("c "))
7 a0 |6 T; n. p9 u6 @+ B d = b ** 2- 4* a * c
; F" c6 ?: g6 [ ifd>=0:0 v: P' g4 P% Q
disc = math.sqrt(d)
) a, z2 B9 ]3 T* f2 u% C root1 = (-b + disc) / (2* a)
* }) S# Q; a& Z6 d6 P2 @ root2 = (-b - disc) / (2* a)
% H8 b5 y: G. b! m print(root1, root2)
& o3 O2 ]" b! j else:
& A7 f9 Q/ h. x5 N# d9 e+ o+ q print('error')
/ W0 W% L& Q% T . ]- v. Q  F9 Y: A5 b1 `3 y1 G( ?
Solver().demo()) G- ~& B! R5 j) E5 Y6 A) C9 M- {
接下来,让我们运行并调试此脚本。
  f- I2 }2 |' q$ [  {运行应用程序
* U1 e: X' b# f  k5 M8 S2 v6 a7 z0 t: W4 v
您已经使用键盘快捷键启动了Solver脚本,所以让我们只提醒它是如何完成的。PyCharm提出了几种运行在编辑器中打开的脚本的方法。
( A5 b! p0 |; r5 `4 h- F

    8 x# ^! j: }, W( L" ?
  • 首先,您可以使用键盘快捷键Ctrl + Shift + F10
    . m2 |$ \  B+ E8 E8 \& g2 ]
  • 其次,您可以使用右键单击编辑器背景调用的上下文菜单命令:
    8 K2 l: Q& c: i/ [) q* V8 f& N2 V

- n/ ]* q( g$ A  t1 M$ p- o

    - t: _& p( N7 `+ S: l4 J( ]; d/ c
  • 最后,可以使用临时运行/调试配置'Solver'从主工具栏运行脚本(在下一节中将更详细地考虑运行/调试配置的概念):
    1 U" V) H, E" l' }; o5 i. o) }

5 Z* G1 v% N' q( `/ _/ d& ?# z7 F在任何一种情况下,PyCharm都会打开Run工具窗口,并显示应用程序的输入和输出:
9 J4 x6 [2 T3 o/ x+ m8 w8 i7 b8 ~
8 U* [, u5 {7 k+ r; @( ~9 e运行/调试配置0 m2 }1 L1 t: I: k( }& g) K

) ]' Y! \% r. |5 P  a每个脚本都使用特殊配置文件或运行/调试配置执行。这样的配置文件用于运行和调试应用程序,并指定脚本名称,工作目录,启动前要执行的操作等。
3 F' i/ G$ F$ T" A; o3 z- f1 vPyCharm为各种类型的应用程序(Python脚本,Django应用程序,测试等)建议了许多默认的运行/调试配置。您可以在“
. J/ J; a- c7 L6 {运行/调试配置”对话框中查看可用的默认值,该对话框可通过“运行”→“编辑”调用在主菜单上配置...命令,或单击主工具栏的“运行”区域中的下拉列表:7 l) z) n8 O1 ]$ @+ Q
. M& k5 J7 b( M: e; V- R6 g: k5 y+ b
让我们更专注地看一下“ 编辑配置”对话框。它的左侧部分包含一个带有两个顶级节点的树视图:Python和Default:
" q$ f7 o3 s" f8 G- q
  N- ~3 B  R' `  t2 N& w较低节点包含默认运行/调试配置列表。这些默认的运行/调试配置是无名的,但每个新的运行/调试配置都是基于默认配置创建的,并获取您选择的名称。) U0 ]" ~/ L# f" M8 w% n: ~& T
上层节点称为Python,只包含一个运行/调试配置解算器,显示为灰色。这是什么意思?9 d0 N9 {/ W: y5 D
运行/调试配置当您刚刚运行Solver脚本时,Solver是PyCharm生成的临时配置文件。它位于Python节点下,因为此运行/调试配置是在Python类型的默认配置的基础上创建的。
% I5 P( Q( h+ I* v您可以保存此运行/调试配置,从而使其永久化。永久运行/调试配置以普通字体呈现。与临时配置不同,永久配置的数量是无限的。. ]6 f" r% W6 a/ e/ \. N
让我们使用相同的临时运行/调试配置Solver来调试Solver脚本。
" k1 n: S8 e1 q! B; x调试应用程序
/ w0 G3 k& C6 @& X5 A! W, l: G5 G
您将如何逐步执行应用程序,检查与变量,监视或线程相关的程序信息,找出异常的来源?这是调试过程的帮助。  m! G/ @& l( m
要开始调试,必须先设置断点。要创建断点,只需单击左侧装订线:
) T8 R0 |6 K* L; I* g' b) m
& O. I) G2 y' F9 z1 D8 _5 o8 w% Z( i接下来,右键单击编辑器背景,然后在上下文菜单中选择Debug'Solver':& X! X7 d5 Q& Z9 l1 I
; E$ {9 x4 e' D5 R4 B. `
PyCharm启动调试会话并显示调试工具窗口。以下图像对应于窗格和选项卡的默认布局:
" i3 K7 l1 r* }4 M; p8 P; @
: m3 E9 @, t' {) d“ 调试”工具窗口显示框架,变量和监视的专用窗格以及控制台,其中显示所有输入和输出信息。如果您希望控制台始终可见,只需将其拖动到所需位置:
+ R! I: w! n1 E/ }( W* Y
# I' K3 a3 t( c  q4 j+ \3 U使用步进工具栏按钮逐步执行您的应用程序:
  ^  Q( G/ t6 P3 i  G4 v5 ]9 L
: f3 W4 {; {0 {+ H1 l: t! n当您单步执行应用程序时,每个到达的断点都变为蓝色:2 A# r1 n+ ^/ k! o5 u& b

# o/ R4 j3 A* _+ J8 Z探索导航! U6 j5 H/ @3 E4 |+ ^& P# g( P

! v0 u, m" V& m7 b  U( U) ~! a导航给PyCharm带来了特别的热情。让我们简单介绍一下PyCharm的众多导航设施。8 a5 a. ]% P+ k, @% G

      n; H$ x+ o8 Y. |7 T( z, o. e0 T
  • 想象一下,你已经停止工作并出去喝咖啡......当你回来时,你不记得你到底做了什么,你在哪里停了下来。在这种情况下,您可以使用最需要的功能之一 - 导航到最后编辑位置。按Ctrl + Shift + Backspace - 就在这里!/ _9 M, I9 F. A! D/ f% L4 \! @
  • 使用PyCharm,可以很容易地使用符号声明。例如,在我们的例子中,将插入符号调用sqrt函数,然后按Ctrl + B - PyCharm会立即在sqrt函数的声明中打开math.py:3 Q6 v6 s% ]; p: X& B, q
  J7 ?* @# n7 x: b  c6 H

    + x0 [0 x  y+ n
  • 非常有用的是能够按名称快速查找任何类,文件或符号。例如,按Ctrl + Alt + Shift + N并键入要转到的符号的名称:5 i3 L; C- W# M  l
0 F0 v2 B3 c" @% V" _" O
您可以在“ 导航”菜单下找到所有可用的导航命令。本教程中描述的只是几个例子.
9 g; `- a( b. G% a8 q重构3 w( Z% `4 k2 u% z) b& _. f7 I
% h! u  L" L/ F% z' I- d% N" ]
让我们更改函数演示的名称,并给它一些更具描述性的名称,比如计算。很可能只是用新的名称改写现有名称。但是,在这种情况下,您必须输入两次新名称:第一次用于函数声明,第二次用于函数调用。在这个小例子中,它不是一个问题,但考虑在一个大型项目上工作,有很多函数调用......更可取的是使用重命名重构。
1 g. T+ L$ }* ^0 e将插入符号放在函数声明中,按Shift + F6,然后在“ 重命名”对话框中键入新名称:
9 f' a# I/ u5 v6 z( q' B& t- J4 l1 B" M$ }, [$ H
单击“ 重构”。所有找到的事件都出现在“ 查找”工具窗口中:1 j3 |0 Y: J* {2 }( s; p1 ~
* Z: K" F" R! {  Y3 V# o7 I
单击Do Refactor按钮 - 您会看到函数声明和函数调用的函数名称已更改:, ]+ r9 b3 ^& I. s! Z4 a! H9 p

( d' F, j4 J$ v5 o7 [3 u* J" J: r可以进一步修改此类:将其移动到其他文件夹,更改计算功能的签名,提取变量等。所有这些操作都是通过各种重构来执行的。我们将在专门的教程中更详细地考虑这些重构。' W9 @2 O8 q% f& [
概要
; i! r9 O1 W: D, I/ }* c5 ^
' T* [% v% E. z所以,这个简短的教程结束了。让我们总结一下我们的成就:
/ R8 C, T# k/ c

    ) D- s, S) Y2 g1 ?
  • 我们创建了一个项目
    & M5 V2 i, Z0 l
  • 我们用一个目录和一个类填充了这个项目
    $ p3 h) }+ ^7 V) w0 I! J
  • 我们已经运行并调试了我们的应用程序! h9 d7 U1 u: T
  • 我们已经探索了很快的导航和重构。- Y6 B8 {8 }" y
菁菁苹果园提供技术支持,有任何问题可随时联系微信coolgps 或者 QQ41360481.

已有 0 个人发表评论

高级模式
B Color Image Link Quote Code Smilies
您需要登录后才可以回帖 登录 | 立即注册  

本版积分规则

加入VIP会员
快速回复 返回列表 客服中心





快速回复 返回顶部 返回列表