本文内容

  • General 一般
  • Lists 列表
  • Maps 映射
  • Ranges/Slices 范围/片段
  • Object access 对象访问
  • 参考资料

Groovy 是一种基于 JVM 的敏捷开发语言,它结合了 Python、Ruby 和 Smalltalk 的许多强大的特性,Groovy 代码能够与 Java 代码很好地结合,也能用于扩展现有代码。由于其运行在 JVM 上的特性,Groovy 可以使用其他 Java 语言编写的库。

General

Python

Groovy

repr(x)

x.inspect(), x.dump()

x.y if x else None

x?.y

"%(foo)s" % locals()

"${foo}"

Lists 列表

Python

Groovy

not x

!x

x.empty

len(x)

x.size()

for item, idx in enumerate(x): ...

x.eachWithIndex { item, idx -> ... }

Maps 映射

Python

Groovy

{}

[:] // an empty map

Depends:

d if used like: for k in d:

list(d) if list needed

d[iter].keys() explicitly

d.keySet()

d.[iter]values()

d.values()

[k+1 for k in d]

d.collect { k, v -> k+1 }

d = dict(zip(k, v))

k = 1..3

v = 'a'..'c'

d = [:]; k.eachWithIndex { it, i -> d[it] = v[i] }

println d // [1:"a", 2:"b", 3:"c"]

Ranges/Slices 范围/片段

Python

Groovy

range(3)

0..<3

range(1, 3+1)

1..3

range(0, 10, 2)

not represented as a data type but you can use

0.step(10, 2) {...}

"abcdef"[3:]

"abcdef"[3..-1]

Object access 对象访问

Python

Groovy

m = 'strip'; getattr(' ! ', m)()

m = 'trim'; ' ! '."$m"()

args = ('a', 2); 'abcabc'.find(*args)

args = ['a', 2]; 'abcabc'.indexOf(*args)

参考资料

Groovy 与 Python 的差异【翻译】的更多相关文章

  1. 以正确的方式开源 Python 项目 - 技术翻译 - 开源中国社区

    以正确的方式开源 Python 项目 - 技术翻译 - 开源中国社区 以正确的方式开源 Python 项目 英文原文:Open Sourcing a Python Project the Right ...

  2. python从零开始 -- 第2篇之python版本差异

    python从零开始 -- 第2篇之python版本差异 第0篇开始,咱们就说选择 python 3.x,一般来说,咱们面临选择的时候总是想了解更多一点,并且版本之间的对比能引申出很多有意思的故事和知 ...

  3. Python调用Google翻译

    出自:http://blog.csdn.net/zhaoyl03/article/details/8830806 最近想动手做一个文档自动下载器,需要模拟浏览器的行为.虽然感觉思路上没有困难,但在技术 ...

  4. Python批量图片识别并翻译——我用python给女朋友翻译化妆品标签

    Python批量图片识别并翻译--我用python给女朋友翻译化妆品标签 最近小编遇到一个生存问题,女朋友让我给她翻译英文化妆品标签.美其名曰:"程序猿每天英语开发,英文一定很好吧,来帮我翻 ...

  5. 转载:Python 实现百度翻译

    来源: https://blog.csdn.net/qq_44814439/article/details/105642066 作者: Chloemxc 功能: Python 实现百度翻译 from ...

  6. Making Games with Python & Pygame 中文翻译

    Making Games with Python & Pygame 用Pygame做游戏 第1章-安装python和pygame 原文作者:Al Sweigart 翻译:bigbigli/李超 ...

  7. Python 调用百度翻译API

    由于实习公司这边做的是日文app,有时要看看用户反馈,对于我这种五十音图都没记住的人,表示百度翻译确实还可以.但不想每次都复制粘贴啊,google被墙也是挺蛋疼的事,所以用python结合baidu ...

  8. Python读取xlsx翻译文案

    首先安装Python,然后安装模块 //查找模块(非必须) pip search xlrd //安装模块 pip install xlrd 由于输出要是utf-8所以需要设置默认环境为utf-8 # ...

  9. 小白学Python——用 百度翻译API 实现 翻译功能

    本人英语不好,很多词组不认识,只能借助工具:百度翻译和谷歌翻译都不错,近期自学Python,就想能否自己设计一个百度翻译软件呢? 百度翻译开放平台: http://api.fanyi.baidu.co ...

随机推荐

  1. php简单浏览目录内容

    <?php $dir = dirname(__FILE__); $open_dir = opendir($dir); echo "<table border=1 borderCo ...

  2. win8、server 2012 清除winsxs文件夹

    使用系统自带的文件清理工具 1.组合键win+x ,选择“命令提示符(管理员)” 复制“dism /online /Cleanup-Image /StartComponentCleanup” 到dos ...

  3. C#各种泛型集合体验

    本篇体验除Queue<T>和Stack<T>之外的其它泛型集合. SortedList<TKey, TValue> SortedList<TKey, TVal ...

  4. Java 字符串包含

    函数boolean containsAny(String str, String searchChars) 判断str字符串中是否包含searchChars字符串 String khh_str = & ...

  5. Unity3D 的大场景内存优化

    我们公司的一个 MMORPG 项目最近在内存方面碰到了红线,昨天开会讨论了一下.我提出了一个改进方案,写篇 blog 记录一下. 问题是这样的.在当下的手机及平板硬件设备条件下,操作系统留给应用的可用 ...

  6. 美国罪案故事第一季/全集American Crime Story迅雷下载

    英文全名American Crime Story,第1季(2016)FX.本季看点:<美国罪案故事>以律师们的视角看待辛普森谋杀案. 本剧探索了案件背后各种混乱,以及案件双方的庭审策略,也 ...

  7. 图片通过Base64Coder编码、解码

    通过这个编码类我们可以将图片转换为这个编码的字符串,上传到服务器. 这个编码是来自小马的一个范例,我看了下挺有用的.所以就放上来以备不时之需. 先说下用法: /** * 下面注释的方法是将裁剪之后的图 ...

  8. [Web 前端] Jquery 复制元素,并修改属性, 追加到另一个元素后面

    cp from  : https://blog.csdn.net/cooledi/article/details/52813668 jquery 复制元素,并修改属性 $('#ID').clone() ...

  9. 动态SQL(章节摘要)

    1,使用动态SQL能够在依赖对象不存在时创建子程序. 2.动态SQL主要利用EXECUTE IMMEDIATE语句运行DML,DDL,DCL等语句操作. 3,假设使用了绑定变量,则必须在EXECUTE ...

  10. Android 应用程序之间内容分享详解(二)

    转载请注明出处:http://blog.csdn.net/xiaanming/article/details/9428613 Android 应用程序之间内容分享详解(一) 之前给大家分享了你开发的应 ...