到目前为止,我只用Windows进行编程。 现在,我有两周的时间开始实习,我将只使用Python编程语言的Linux环境。 我已经在我的系统上安装了Ubuntu,但没有涉足shell脚本。
我需要一些关于如何快速学会使用Linuxterminal的build议。 任何书籍或网页资源,你可以build议?
另外,是否有一个特定的IDE通常是Linux上的Python编程的首选,或者Vim是首选? 我怎样才能最好地为实习做好准备?
感谢您抽出宝贵的时间。
作为一个实习生,你会想使用你的导师最适合的工具。 如果你陷入困境,你将能够迅速征求建议。
围绕vi,vim或emacs学习你的方法将会有所帮助。 一个中使用的基本概念将转移到另一个。 你需要能够打开和读取文件,搜索文件,编辑和保存文件,并学习如何正确应用任何python格式助手。
如果还没有,还应该熟悉版本控制。 再次,任何人都会做,你需要专注于概念和礼仪,而不是具体的工具。
实习的目标(实际上是你在大学的全部时间)应该被用来学习概念而不是具体的工具。 如果你学习了这些概念,你就可以使用任何工具来应用这些概念。 你也将“学习如何学习”一个新的工具,这是非常有价值的。
在这种情况下,您不需要shell脚本知识,尽管这不是很难学习。 我阅读了一些shell教程,并将其付诸实践。 尝试从命令行执行所有操作,包括find(grep),find / replace all(sed),find files(find),使用python脚本自动化等等。基本上不要欺骗。 你会这样拿起很多东西。 你也可能最终会想知道你是如何管理Windows的。
我使用什么取决于项目。 我真的很喜欢Eclipse + PyDev,但这是我的个人偏好,我也使用Vim,取决于我在哪里/在做什么。 请记住,您可以从命令行输入python
,然后将其拖入python环境。
我也推荐Eclipse + PyDev 。 您可以快速开始使用此开发环境。 我也推荐网站Dive Into Python 。 它提供了一个Dive Into Python
的在线免费版本,它非常易于阅读,易于理解,并且非常适合Python初学者。 如果你真的想要一本纸质书, 学习Python ,即The Animal Guide
,是最好的。
学会理解人(ual)页面。
对于几乎所有旧的Linux命令/程序,都有一个手册页,通常详细解释命令。
所以文件系统导航的基本知识:
显示目录内容(列表)
ls
显示隐藏的文件
ls -a
显示详细资料
ls -l
更改目录
cd /full/path/name
打印当前目录
pwd
删除一个文件
rm file
删除一个目录(递归)
rm -r directoryName
建立一个目录
mkdir directoryName
移动(或重命名)一个文件
mv /path/to/file /new/path/to/file
显示mv的手册页
man mv
学习vim可能是必要的,取决于你的实习环境。 在Eclipse中执行我的Python(以及不是简单的文本编辑)。 你应该在任何情况下学习足够的打开一个文件,做一些改变,并保存在Vim中的变化。
请记住,Ubuntu非常容易。 为了让自己更难,请使用命令行来实现每一个可能的事情。 通过在终端中输入他们的名字打开程序。 用终端浏览你的文件。 用vim做简单的编辑。 这应该提供一个良好的做法,您需要在Neverland中使用SSH进入电脑,然后从源代码下载并安装您最喜欢的解释器的本地副本,以便设置一个cron作业来运行脚本以播放时钟噪音。
除了已经写好的建议,我建议你安装IPython (打开一个终端,应用程序>附件>终端和类型):
sudo apt-get install ipython
也可以在终端上输入ipython
来启动Python解释器。 与内置的python解释器不同, ipython
为您提供了选项卡完成功能。
例如,如果你键入一个对象的名字后跟一个句点和TAB(例如sys.[TAB]
), ipython
会显示你(几乎)所有对象的属性。
在对象名称(例如sys?
)之后键入一个问号,然后获得有关该对象的文档。
这是一个探索Python的好方法。
没有暴露于shell脚本
好! 你有Python,所以希望不需要用shell来编写实际的脚本。 它可能比DOS批处理文件更强大,但它也同样丑陋。
我需要一些关于如何快速学会使用Linux终端的建议。
像这样的东西?
除了学习这些命令之外,还需要习惯使用Tab键完成和箭头键命令调用(如果您还没有使用Windows命令提示符执行此操作),使用移位箭头滚动等等。 知道&
(在后台执行)命令后缀,ctrl-C-to-stop,ctrl-Z-to-pause,作业和screen
也是有用的。
顺便说一下,如果您将花费任何时间在交互式Python解释器中,那么也非常值得在其中添加制表符 。 (这与Windows上的情况一样,但是在Win中,默认情况下,您不会获得pyreadline
。)
有没有一个特定的IDE,通常是Linux上的Python编程的首选
就像在Windows上一样,如果你需要的话,IDE可用,但是很多人只是使用普通的文本编辑器。 如果这是你喜欢的, vim
很好。 nano
是另一个终端文本编辑器,你通常会得到相对简单的。 Ubuntu的默认基于桌面的编辑器gedit
也很好。 这是个人品味的问题。
(如果你在一家特定的公司实习,他们可能有自己的开发环境,所以他们更愿意使用。)
对于Python IDE,我建议使用IDLE或Eclipse与PyDev。
请记住,您也可以在linux命令行上使用python。 它支持从文件加载代码,如果你使用两个命令窗口,那么其中一个将是你的“REPL”,你将运行python和动态加载代码 – 另一个窗口可以运行你的编辑器。
关于linux命令行,我不能推荐任何好的资源。 然而,如果你沉浸在这个环境中,并且在接下来的2周内只使用linux,你将会有一个好的开始。 只要不断学习,当你不知道该怎么做时,阅读一个联机帮助或谷歌搜索来找到答案。
对于一个非常初学者介绍的命令行,请查看: http : //en.flossmanuals.net/CommandLineIntro/GettingStarted
就Python编辑而言,我个人更喜欢使用SciTE 。 它只是一个程序员的文本编辑器,为各种语言提供语法高亮显示。 我更喜欢轻量级的编辑器,而不是更复杂的环境,但是如果您想要一个完整的IDE,您可以随时尝试使用NetBeans ,IDLE或Komodo(所有这些都可以在Windows和Linux中使用)。
至于最终和快捷的方式来了解它,并学习它有一个很好的作弊表在网上这样的: http : //fosswire.com/post/2007/8/unixlinux-command-cheat-sheet/