1

我来自 C-Java-C# 世界...括号是 VIP 公民,类型受到每个人的喜爱 :)

有时我需要开发一些代码来自动化重复性任务,转换一些复杂的框架,订购输入文件,向服务器发送程序请求......你知道我的意思吗?

但有时我想知道用 Python 之类的语言写同样的东西有多容易……或者这些 DoItSimple 语言:) - 恕我直言。

那么我应该使用哪种语言来完成此类任务?

非常感谢您!

4

10 回答 10

4

您应该真正研究一种更流行的脚本语言,例如 Python/Ruby/Perl。其中任何一个都会让你为你想要实现的目标做好准备。您应该使用哪一个是围绕水冷却器进行激烈辩论的问题 - 或者更有可能是咖啡机。

也就是说,对于像“awk”和“sed”这样的学习工具有一些话要说,更不用说“vim”中用于完成日常任务的一些扩展功能

于 2010-02-08T00:41:55.667 回答
3

在很长一段时间内,您总是会更快地使用您所知道的语言。但是,如果您只是想体验新事物并最终拥有另一个有用的工具,我会尝试使用 python。它非常方便,与 C# 世界相差不远(如果您曾经使用过 BASIC,感觉非常相似)。

BTW - AlBlue 对 awk/sed/vim(macros/etc) 的建议是 A+。我经常会在工作中跳到 Linux 机器上来处理任何重复的文件任务(在 Windows 上你可以得到 cygwin,我们只是在工作中没有它)。

于 2010-02-08T00:42:56.730 回答
3

我喜欢 PHP 和 perl 来处理这些事情(大部分都是从 sed 和 awk 发展而来的),但如果不排除 bash shell(我在 Windows 系统上使用 Cygwin),甚至是 Windows 脚本语言(是的,批处理文件仍然存在)可以做的比我曾经想象的要多。

于 2010-02-08T00:43:41.717 回答
2

I Say Ruby or Python


My favorite is Ruby for its high-purity object model and generally awesome syntax and power.

However, Python has the same general capabilities and is about twice as popular.

Traditionally, Perl is used for sysadmin automation and other scripting tasks, plus obviously sed, awk, and sh.

But languages like Perl and PHP started as ad-hoc scripting interpreters, whereas Python and Ruby were real object-oriented languages. Perl and PHP have since grown object-oriented revisions, but now they have all the complexity of the first "nice try" coupled with the "oh we should make it a real language" extensions.

Ruby, in particular, is the product of a real language designer who combined the ultra-pure object model of Smalltalk with the populist syntax of Perl.

于 2010-02-08T01:52:56.537 回答
2

如果你来自 C 世界,我会说Lua,因为 Lua 不仅是一种优秀的脚本语言,而且它还带有一个超级 API,可以将它绑定到 C 程序,这意味着从长远来看,你将能够使用相同的技术编写 C 程序脚本。

Lua 也有自己的优点。我在其他地方写过为什么我更喜欢 Lua 而不是 Python。

于 2010-02-08T04:48:35.523 回答
2

您为什么不列出您认为有吸引力的语言并编写一些小段代码。然后,您将能够选择“您的”。

于 2010-02-08T00:42:30.797 回答
1

Google for something like "perl vs ruby vs python" or "best general purpose scripting language" ... You should find some comparisons. I personally like ruby most cause it lacks the nasty $'s in front of all variables. If you're familiar with c# and the .net framework, IronRuby and IronPython would give you access to all the classes you already know.

于 2010-02-08T01:17:33.593 回答
1

据我所知,PHP 是执行以下任务的脚本语言之一:订购输入文件,向服务器发送编程请求......而且 PHP 是类似 C 的语法,据说是最容易学习的(你不知道甚至不用先学再用,边学边用)。但是 PHP 不是通用的脚本语言。

Python 是一种通用脚本语言,具有强大的类型检查功能,它不像 C 的 bug,恐怕你不会喜欢它。

我自己最常使用 PHP 进行文本处理、网络(套接字、HTTP...)测试。^_^

于 2012-07-15T02:00:37.363 回答
1

我可能会因为推荐这个而被否决,但我建议从“用 Perl 编写 C ”开始,然后朝着适合你的惯用 Perl 水平努力(或不努力)。

我建议这样做的原因是,即使你的 Perl 代码的结构很像 C,即使你没有利用 Perl 的所有语法糖,你仍然会看到生产力的提高。从 C 风格的 Perl 开始,您可以在学习语言的同时使用您已经熟悉的习语(即 C 风格的 for 循环与 Perl 的 foreach)。

于 2010-02-08T05:42:10.493 回答
1

这些都是很好的脚本语言,恕我直言,您选择哪一种可能不会有太大的不同。我希望我不会因为在主要是宗教争论中注入现实的答案而被否决。这基本上就像当你为上哪所大学而苦恼时,有人指出,只要他们都是好学校,就不可能对你的生活产生太大影响。

我使用 Perl 来编写 CLI 程序,因为它是我学习的第一个脚本语言(20 多年前,它是在新生的 WWW 上编写 CGI 脚本的通用语言)。我现在使用 PHP 来编写 web 应用程序,因为我上一份工作是用它来编写我们的 Intranet 网页,并且它具有许多用于 web 和 SQL 编程的不错的内置功能;但我确信通过编写 CPAN 模块,我可以像使用 Perl 一样高效。

如果有一种语言在与您合作并尊重的其他程序员中很受欢迎,那可能是选择它的最佳理由之一,因为您将拥有一个方便的支持社区。SO 很好,但更好的是能够向当地专家学习。

于 2012-07-15T02:39:19.770 回答