社区所有版块导航
Python
python开源   Django   Python   DjangoApp   pycharm  
DATA
docker   Elasticsearch  
aigc
aigc   chatgpt  
WEB开发
linux   MongoDB   Redis   DATABASE   NGINX   其他Web框架   web工具   zookeeper   tornado   NoSql   Bootstrap   js   peewee   Git   bottle   IE   MQ   Jquery  
机器学习
机器学习算法  
Python88.com
反馈   公告   社区推广  
产品
短视频  
印度
印度  
Py学习  »  Python

如何将python代码转换成Java

Sheeraz Abro • 5 年前 • 1750 次点击  

这个问题已经有了答案:

我一直致力于将Python代码转换成与我的研究工作相关的Java,我在Python中有一个查询。 伦恩 ()对象。我的问题出现在提供的代码中的[::-1]。

我曾尝试在Java中通过简单的增量循环来实现它,但它不起作用。它在temp_line.split(“$target/”)[1]处给出数组超出绑定的异常。

 for i in range(0, script_lines.__len__())[::-1]:
   temp_line = script_lines[i]
        if "$target/" in temp_line and "cp" in temp_line:
           Case_num = 1 + int(temp_line.split('$target/')[1].split('.txt')[0])
            return Case_num

我想知道代码中的[::-1 ]是什么意思,这样我就可以把它转换成Java。

Python社区是高质量的Python/Django开发社区
本文地址:http://www.python88.com/topic/39411
 
1750 次点击  
文章 [ 2 ]  |  最新文章 5 年前
Diego Torres Milano
Reply   •   1 楼
Diego Torres Milano    5 年前

这是一条蟒蛇 扩展切片 .

例如,可以提取具有偶数索引的列表元素:

>>> L = range(10)
>>> L[::2]
[0, 2, 4, 6, 8]

负值还可以按相反顺序复制同一列表:

>>> L[::-1]
[9, 8, 7, 6, 5, 4, 3, 2, 1, 0]

这也适用于元组、数组和字符串:

>>> s='abcd'
>>> s[::2]
'ac'
>>> s[::-1]
'dcba'

有关详细信息,请访问 https://www.pythoncentral.io/how-to-slice-listsarrays-and-tuples-in-python/

Amadan
Reply   •   2 楼
Amadan    5 年前

x[::-1] 在python中,意思是“序列的所有元素” x 从最后一个开始,以第一个结束)。 range(y) 从中生成所有数字 0 y - 1 . 因此,您的行将生成从最后一个索引开始的索引 script_lines 到0。

不过,这不是一个很好的python代码——它创建了一个不需要的列表。使用 __len__ 这种方法也不受欢迎,因为它是一种给排水的方法;而是使用瓷器。 len 功能。一个更好的写作方法应该是

for i in range(len(script_lines) - 1, -1, -1):

(开始于 length - 1 ,到达前停止 -1 添加时 - 1 每次迭代。)但从 i 实际上在提取之后从未提及 temp_line 重写得更好

for temp_line in reversed(script_lines):

Java没有任何类似的东西 reversed ,因此您必须对索引使用循环:

for (int i = scriptLines.size() - 1; i >= 0; i--) {