pycharm编辑好的代码如何应用到另一台电脑上?

pycharm编辑好的代码如何应用到另一台电脑上?,第1张

pycharm一般编辑的是Python代码

首先可以在另一台电脑上也安装Python环境,然后将代码放到另一台机器的指定目录,命令行执行Python+指定py文件。

或者可以将Python打包成EXE文件,然后在另一台电脑上就不需要安装Python环境了。

如果你的代码没有语法错误,但是运行不出来,可能有以下几种可能:

代码有逻辑错误:即使代码没有语法错误,但是由于逻辑不当或者变量没有被正确地赋值,导致程序的执行流程出现问题。

代码中有未处理的异常:当代码执行过程中发生异常(如访问空指针、除零等),如果没有正确地捕获或处理这些异常,程序就会停止运行。

代码中有死循环:如果你的代码中有一个无限循环,那么程序就会一直运行下去,无法结束。

代码中有堵塞操作:如果你的代码中有某些操作需要等待较长时间才能完成(如等待用户输入、网络连接等),那么程序就会堵塞,无法继续执行

如果你的代码没有语法错误,但是运行不出来,可以尝试以下步骤来解决问题:

检查代码逻辑是否正确:通过阅读代码,确保代码的执行流程是正确的。

检查代码中是否有未处理的异常:使用try-except语句来捕获和处理异常。

检查代码中是否有死循环:确保循环条件是正确的,并且在循环内部有退出循环的机制。

检查代码中是否有堵塞操作:确保堵塞操作能够得到及时的响应,或者使用多线程或异步操作来避免堵塞。

尝试调试代码:使用调试工具(如PyCharm的debug功能)来查看代码的执行流程,确定问题出在哪里。

再有就是请列出你的代码,或者截图,这样就能更好更快的解决你遇到的问题

在pycharm改完代码后,要切换专门的上传软件或者终端敲命令,才能把代码放到测试服务器去验证,很麻烦。这里分享一个直接在pycharm里快速上传代码到远程服务器的方法。

打开pycharm,选择Tools--Deployment--Configuration

2

弹出对话框中点左上角加号

3

输入一个名字,并选择SFTP协议

4

接着在新窗口中输入远程服务器地址、端口号(一般默认22就可以了)、用户名密码等信息。可以点击Test SFTP connection来测试能不能连接

5

切换到Mapping标签,在Deployment path on server 'test'这一栏的最右侧,点击按钮,选择文件上传的目标目录。

之后点击Use this server as default,就可以让这个工程一直默认上传到这个服务器的这个目录,不用多次选择

6

保存设置退出后,在代码视图界面右击鼠标,可以看到Upload to test,用它就可以把代码上传到刚才的服务器了

END

初步使用

当您第一次启动PyCharm的时候,他会问你要使用的键盘布局和主题。我不喜欢它的Emacs键盘映射,所以我用的是默认的Mac OS X键盘映射并且自定义了我想要的快捷方式:

如果这是你第一次使用PyCharm,并没有什么配置可以导入的。你可能会想在欢迎屏幕中点击“配置”,设置一些基本的配置:

我喜欢显示出行号和方法分隔符(Editor→Appearance→Show method separators, Show line numbers):

另外,我喜欢Solarized主题。我遵循指示安装了它,并选择它作为编辑器的默认主题→颜色和字体。 浅色版的Solarized IntelliJ有一些奇怪的颜色选择(例如,它采用灰色为默认的文本,而不是更清晰的黑色),所以我在编辑器上进行了修改→Colors & Fonts→General。我的建议是不要害怕修改颜色为你自己喜欢的。你可以导出你的配置,以防你需要重新安装PyCharm。

相比于别的一些IDE,我觉得PyCharm在视觉上的效果上非常干净,如果你想要一个更简洁的用户界面,您可以隐藏工具栏,工具按钮,导航栏和状态栏(在视图菜单上):

Virtualenv和Python解释器

您可以创建新的项目文件→File→New Project or open an existing project withFile→Open Directory。 PyCharm支持多种类型的Python项目,如Django,Flask等等。在这里,我将创建一个简单的项目,以测试pyquery库(我会选择“Empty project”)。

你需要告诉PyCharm你想用哪个Python解释器,因为它可以使用不同的解释器对于不同的项目。它将利用这些信息来索引的所有可用的库。一个好的做法是对于每个项目建立一个virtualenv。您可以使用一个已经存在的virtualenv或从PyCharm创建一个新的(Settings→Project Interpreter→Python Interpreters)。

对于这个项目,我将创建一个新的virtualenv并使其用于所有的项目:

您可以快速搜索,阅读说明,并从PyCharm安装软件包。没有什么是你在在终端上不能做的,但它能够使你无需离开IDE,更加方便地够搜索包。

一些软件包可能需要安装一段时间,特别是如果他们需要进行编译。 PyCharm运行安装过程是在后台,你可以通过单击状态栏看到正在发生的事情:

正如我们所看到的,它不仅安装pyquery报,所依赖的包,如lxml也一并安装(正如我们所期望的):

快捷键

PyCharm是没有Vim的,但你也可以只靠键盘做很多事情。您可以将快捷方式设置到几十个(如果不是数百个)快捷动作在Settings→Keymap。我修改了相当多的默认键盘映射,因为我喜欢有像Control-a, Control-e, Control-k,and Control-y那样的快捷键,而这几个快捷键在默认情况下多用于文本框,并没有设置默认在“Mac OS X”的键盘映射。您还可以定义鼠标快捷键。举例来说,我使用Option-Click来改变快速文档。如果你是一个Vim的用户,您可能希望尝试一下IdeaVim,一个Vim的仿真器插件。我听说过这个好东西,但我没有机会去尝试它。

我用的是Dvorak keyboard layout,但烦人的是,一但用到不对的快捷键就会有bug。有人反映了这个问题,French Canadian and German layouts也有这个问题。这意味着我必须重新绑定不少的快捷方式来避免这个问题。

PyCharm使用功能键,如F1和F2等很多。正如你可能知道的,在Mac上,顶部的按键多作为默认“多媒体”键,并通过按下Fn键的来生效。我们可以在System Preferences→Keyboard交换这种方式。

我希望能够控制音量和改变亮度,而不需要使用Fn键,但我也喜欢使用功能键,而无需触碰较远的Fn键(我很懒惰,我能说什么?)。我用Palua在“多媒体”和功能键之间切换。你可以用全局键切换,也可以配置Palua在使用特定应用程序时,自动切换。我为所有应用程序使用多媒体键的(默认值),并配置Palua为Xcode和PyCharm使用功能键。

外部编辑器

PyCharm可以启动任何外部工具,所以我将其配置用Emacs来打开当前文件。当你想要利用你喜欢的编辑器(Emacs,Vim,TextMate等等)做一些快速编辑,这非常有用。

进入Settings→External Tools,确保“Open console”未选中,将路径插入程序,参数(在这种情况下,我们可以用FilePath来得到完整的文件名)和工作目录(ProjectFileDir/ FileRelativeDir /)。

你可以把它分配给一个快捷方式:

现在它可以从菜单栏获得。

运行代码和REPL

PyCharm有很多方式来让我们运行代码。我们可以用古老的print 函数(或声明语句,这取决于你的Python版本),在REPL导入代码,发送代码到控制台,使用调试器,或在终端上使用IPython。

打印输出

使用打印来显示值是一个有用的并被广泛使用的技术,但是如果不小心使用的话,它可能会导致混乱的代码。

如果该文件已被选中运行,我们可以通过单击“play”按钮或Control-R来开始。

如果没有选择文件来运行,会从上下文菜单中选择一个文件,用Control-Option-R或右击来运行她。 PyCharm会记住你的选择,下一次你可以继续使用Control-R。这听起来很复杂,但它其实非常简单。检查手册,以便了解更多的信息。

控制台和REPL

我最喜欢的方法是在REPL运行代码。您可以在PyCharm的工具栏中打开一个Python控制台,Tools→Run Python Console(我已经分配到Control-C)。它会使用IPython(如果可用)(我建议你在virtualenv内安装IPython),并将当前文件的路径添加到Python的路径。在控制台上,你可以像往常一样导入你要来执行的功能。

在控制台中补全功能仍然可用:

我们可以像平时一样正常使用已经导入的函数,并且可以利用⌘–4轻松切换控制台的可视性。

在控制台执行所选择的代码

如果我想运行的代码是多了几个单行,并没有编写正式的单元测试(例如,可能我玩的是数据)我可以将它保存在一个临时文件。我们可以选择我们想要运行的代码(通常我只需要利用⌘-A选择整个文件),并选择从上下文菜单中选择“Execute Selection in Console”(或者,更好的方式,使用键盘快捷键)。 [我省略了一些菜单项中的截图以使文章短一些。

在下面的例子中,标题变量在控制台中可用,因为我们在控制台中选择整个临时文件来执行:

如果我们可以在一个操作中发送整个文件到控制台,那就太好了。幸运的是,我们可以记录一个宏。选择Select Edit→Macros→Start Macro Recording and performthe operations as before(选择整个文件,发送到控制台,切换到控制台)。正如你所看到的,我的宏只有四个动作(我按向下箭头键取消选择):

当您录制的宏已经在宏菜单,你可以分配给它快捷方式(我使用Control-C Control-E,但由于某些原因PyCharm只显示两个快捷方式的一半)。

调试

很多人喜欢使用调试器来检查数据。即使我喜欢使用REPL,有时调试程序更有效,在检验复杂的对象时尤其如此。 PyCharm不允许你在一个空行设置一个断点,因此,在这短短的例子,我不得不添加一个额外的行(我使用print函数,但我本可以使用pass),因为我想要调试停止在设置的headlines变量后。在真正的代码中,很少有这个必要。

IPyhton

最后,利用IPython来运行外部终端并使用一些功能,比如%run和自动重载没有任何不妥。

搜寻命令

这很容易变得不知所措,因为有这么多的命令。如果您在Mac上使用PyCharm,你可以像往常一样使用Help→Search,或者您可以在任何平台上使用Help→Find Action。它可以让你搜索任何PyCharm命令,包括不能从菜单中获得的。 (Emacs的使用者会注意到这有点类似于Emacs的M-X)。这是非常有用和强大的功能,我一直使用它。

代码补全

代码补全功能在PyCharm上是一流的。默认情况下PyCharm会在你输入的时候给出建议:

由于此功能可有点耗电,你可以通过选择File→Power Save Mode来禁用它。您仍然可以通过Control-Space显式使用这一功能。

在输入的时候,您可以通过键入一个子串来缩小建议列表:

或者,您可以键入CammelCaseClasses或function_names_with_underscores的第一个字母:

如果您键入Ctrl-Space一次,PyCharm将尝试列出最相关的项目:

如果你再次键入Control-Space,将列出它所知道的每一个名字。这可能是压倒性的,但要注意,它列出了没有导入的文件 barpy中的函数name_of_mother。

但往往你只是想补全在打开的缓冲区中的一个局部变量的名称。很久以前可以在Emacs和Vim实现这一功能,二现在也可以在PyCharm上实现。手册将其称为Hippie Completion,但实际的命令名称(即,你会发现在Find Action的那个名字)是“Cyclic Expand Word”,并且在我的测试中,它甚至对文档字符串有效。

代码补全可能无法在某些情况下工作,比如当一个库没有类型提示。这个StackOverflow页面建议在PDB中设置断点并用dir列出所有可能的属性。一个类似的解决方案是在PyCharm创建断点,并执行一条表达式——通过在调试工具栏点击最后一个图标(或使用适当的键盘快捷键)。在这种情况下,我计算的表达式是“dir(r)”。

访问文档

PyCharm有三种方式可以访问文档:快速定义,快速文档,外部文档,以及参数信息。您可以从查看菜单或者从各自的快捷方式去访问它们。

快速定义将显示整个定义的符号(类,方法,功能等)的(废话!),当然也包括文档。如果你只是想快速浏览一下的定义,而跳跃到它是很有用的。

快速文档将显示符号的文档和签名。

最后,外部文档,以及参数信息是非常简单的。第一个在默认浏览器中打开文档,第二个给出了一个函数或方法(例如快速查询关键字参数的名称是很有用)参数信息。

外部文档工作外适用于Python(当然),PyQt4,PySide,GTK,WX,numpy,SciPy,和kivy,并且您可以为外部文档添加路径,在Settings→Python External Documentation中设置。

代码质量

当你在打字的时候,PyCharm会检查你的代码是否符合PEP8。它会让你知道,你是否有太多的空格或空行等等。如果你愿意,你可以配置PyCharm运行pylint作为外部工具。

在源代码找到自己的方式

当你掌握了它的导航命令时,PyCharm开始变得强大起来。它可以跳转到类,函数等等。在Mac上你可以利用⌘-B或者⌘-Click跳转到类,方法,函数,变量的定义,同样在Windows和Linux上使用 或Ctrl-B或者Ctrl-Click。

导航到类,文件或符号的机制几乎是一样的。在你输入一个字符串的时候,你将看到一个对话框,包括你当前项目以外的项目,同市匹配过滤的结果。转至导航菜单或使用相应的键盘快捷键:

这是一个类定义典型的对话框:

你可以输入名称的一部分,包括文件扩展名。举例来说,如果你想打开Django项目的一个JavaScript文件是,但又不记得它的名字,你可以搜索“js”。

这些功能使我们能够非常快速地浏览源代码。假设我们正在研究Django的源代码,我们希望看到的是功能实现的过程。我们不知道它的定义,所以我们去Navigate→Symbo(⌥-⌘-O),输入“render”,并选择第一个选项(我们可以看到它在djangoshortcuts定义)。如果我们隐藏了导航栏,我们可以使用Navigate→Jump到导航栏(⌘-↑),快速显示它并查看该文件定位(django→django→shortcutspy):

有时在去掉你并不感兴趣的那部分东西之后,代码补全的效率会更高。在下面的例子中,我删除相关的JavaScript的结果,得到了一个更加简洁的列表:

PyCharm可以让你折叠块,如类,方法和函数,但你可以创建自己的可折叠的区域。当涉及到成组的一些东西时,就很有用(类,方法,函数等)。这些模块可以折叠的话,会使我们能够专注于代码的特定区域。你可以通过Navigate→Custom Region或使用相应的键盘快捷键来显示列表文件中的所有区域。遗憾的是有没有办法在一个工程中列出所有区域。

单元测试

在我们可以运行测试文件之前,我们需要添加一个新的运行/调试配置。我们去Run→Edit Configurations,然后点击在左上角的加号按钮。然后,我们选择“Python tests”,开始测试。在这个例子中,我将使用单元测试:

最后,我们需要添加这些测试的文件夹,并选择正确的Python解释器:

现在就像我们运行代码一样,我们可以运行我们的测试:通过点击工具栏或者选择Run→Run(Control-⌥-R)。这将打开一个对话框,你可以在对话框中选择你想要运行的代码(你可以运行别的)。您可以进行所有测试或仅测试光标。

当你运行测试是,PyCharm会记住你最后的选择,这样你就可以利用Control-R来重复测试。这非常有用,如果你解决了一个特定的测试情况,并希望多次运行它,但不运行其他测试。你并不需要定位到你想要运行的测试文件;你可以从任意文件中运行测试。您可以通过选择Navigate→Test(或相应的热键)完成代码的测试。

处理多个文件

正如你看到的那样,PyCharm为每一个文件使用一个标签

要切换到标签,我们可以使用命令选择下一个标签或者选择上一个标签。默认快捷键是Control-→ 和Control-←,但OS X使用这些按键,让我重新绑定它们至Control-⌘-N

和Control-⌘-P(在终端我使用同样的快捷方式切换标签页)。

一个更直接的方法选定标签就是使用Navigate→File,或者View→Recent Files(⌘-E)和View→Recently Changed Files(⇧-⌘-E)。最后两个命令将显示文件,你可以通过输入子串来缩小选择范围。在下面的例子中,我只需要输入“⌘-E”,“S”,“ENTER”键进入scratchpy文件的标签:

多窗口

PyCharm支持多窗口,虽然不如Emacs中那么优秀,但也足够用了。

在默认情况下没有已分配的快捷方式来处理分割窗口,所以你必须自己做。这些是我用的快捷键:

垂直分割,Control-S

水平分割,Control-H

非剖分,Control-C Control-U

非剖分所有,Control-C Control-A

转到下一个分离器,Control -C Control -N

转到上一页分离器,Control -C Control -P

移动到相对组,Control -C Control –M

再有两个窗格的情况下拖动标签比较方便。

有以下几点原因:

第一,有可能是只安装了pycharm,没有装anaconda,没有给编辑器添加解释器,所以运行不了代码。

第二,有可能是代码错误,如果下边爆红了,而且会有警告等词语,代码也无法运行。

第三,有可能是编辑器内部环境错误,没有添加编译环境。

pycharm主要功能

编码协助:其提供了一个带编码补全,代码片段,支持代码折叠和分割窗口的智能、可配置的编辑器,可帮助用户更快更轻松的完成编码工作。

项目代码导航:该IDE可帮助用户即时从一个文件导航至另一个,从一个方法至其申明或者用法甚至可以穿过类的层次。若用户学会使用其提供的快捷键的话甚至能更快。

代码分析:用户可使用其编码语法,错误高亮,智能检测以及一键式代码快速补全建议,使得编码更优化。

Python重构:有了该功能,用户便能在项目范围内轻松进行重命名,提取方法/超类,导入域/变量/常量,移动和前推/后退重构。

欢迎分享,转载请注明来源:浪漫分享网

原文地址:https://hunlipic.com/langman/3622209.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-08-16
下一篇2023-08-16

发表评论

登录后才能评论

评论列表(0条)

    保存