3.
import java.io.BufferedReader;
import java.io.FileNotFoundException;
import java.io.FileReader;
import java.io.IOException;
import java.util.regex.Matcher;
import java.util.regex.Pattern;
public class ChallengeThree {
// http://www.pythonchallenge.com/pc/def/equality.html
public static void main(String[] args) {
try {
BufferedReader br = new BufferedReader(new FileReader("c:\\4.txt"));
Pattern pattern = Pattern
.compile("[^A-Z]+[A-Z]{3}([a-z])[A-Z]{3}[^A-Z]+");
Matcher matcher;
String temp = null;
while ((temp = br.readLine()) != null) {
matcher = pattern.matcher(temp);
while (matcher.find()) {
System.out.print(matcher.group(1));
}
}
} catch (FileNotFoundException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
}
}
}
注:与上一题类似,网页的源码中有用注释写的一段乱码,让我们找出两侧被3个(且只为3个)大写字母包围的小写字母
4.
import java.io.BufferedInputStream;
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
import java.net.URL;
public class ChallengeFour {
// http://www.pythonchallenge.com/pc/def/linkedlist.html
public static void main(String[] args) {
ChallengeFour cf = new ChallengeFour();
try {
String currentNum = "12345";
while (currentNum.matches("[0-9]{1,}")) {
System.out.println(currentNum);
if (currentNum.equals("92118")) {
currentNum = cf.getNextNum(String.valueOf(Integer
.parseInt(currentNum) / 2));
} else {
currentNum = cf.getNextNum(currentNum);
}
}
System.out.println("The last result is " + currentNum);
} catch (IOException e) {
e.printStackTrace();
}
}
public String getNextNum(String currentNum) throws IOException {
URL url = new URL(
"http://www.pythonchallenge.com/pc/def/linkedlist.php?nothing="
+ currentNum);
BufferedReader br = new BufferedReader(new InputStreamReader(
new BufferedInputStream(url.openStream())));
String temp = null;
String[] strings = null;
while ((temp = br.readLine()) != null) {
strings = temp.split(" ");
}
br.close();
return strings[strings.length - 1];
}
}
注:点击图片,调用linkedlist.php?nothing=12345得到了and the next nothing is 92512 从中得到规律,根据每次获得的nothing值来进行下次url访问。
4.
这道题需要用到python专有的一个核心模块,java无解,直接google答案,进入下一题
分享到:
相关推荐
Java到Python的转换工具,如标题“java2python”所示,是编程领域中的一种实用技术,旨在帮助开发者将已有的Java代码转换为Python语言。这种转换对于那些熟悉Java但希望进入Python生态系统,或者想要利用Python特定...
1. Java教程是为Python程序员准备的,目的是帮助已经熟练使用Python的开发者快速学习Java语言,并迁移到Java编程环境上。 2. Java教程同样适合那些想掌握大数据基础技能的算法工程师,因为Java是处理大数据领域中...
二、Java实现GRPC 1. 安装和配置:首先,你需要在Java项目中添加GRPC和protobuf的依赖。在Maven或Gradle的build文件中,加入相应的依赖项。 2. 定义.proto文件:创建一个名为`helloworld.proto`的文件,定义一个...
它允许 Python 程序直接使用 Java 类库,反之亦然。JPype 是一种轻量级的解决方案,适用于需要在 Python 和 Java 之间共享数据和对象的场景。 无论选择哪种方式,都要注意以下几点: - 错误处理:确保捕获并处理...
java2python, 将Java源代码转换为 python的简单但有效的库 java2python简单而有效的工具将Java源代码转换为 python 。java2python包可以翻译任何语法有效的Java源代码文件。 生成的python 代码不能保证运行,也不...
1. **Jython**: 为了在Java环境中运行Python代码,我们可以使用Jython,这是一种Python的Java实现。Jython使得Python代码可以直接被Java虚拟机(JVM)执行,从而实现Java和Python的无缝集成。 2. **Python脚本调用*...
如果你正在使用Apache相关的框架(如Spring Boot),可以考虑使用`ScriptEngineManager`配合`PythonScriptEngine`来执行Python代码,这将提供更高级别的接口,支持直接在Java环境中执行Python代码。 在提供的...
如果你需要在Java中调用Python 2.x和3.x的不同版本,可能需要寻找其他解决方案,比如使用JPyLib或其他第三方库。 JPyLib是一个Java与Python互操作的库,它允许Java代码直接调用Python函数,反之亦然。通过JPyLib,...
java调用python的第三方包,在java工程中直接引用即可,亲测可用
java+python实现圣诞节雪花漫天飞舞java+python实现圣诞节雪花漫天飞舞java+python实现圣诞节雪花漫天飞舞java+python实现圣诞节雪花漫天飞舞这个项目是使用Java和Python编写的一个圣诞节主题的雪花飘舞特效。...
Python 以其简洁的语法和丰富的库资源受到很多开发者的喜爱,而 Java 则因为其跨平台性、稳定性以及在企业级应用中的广泛使用而备受青睐。在某些情况下,开发者可能需要将已有的 Python 代码转换为 Java 代码,以...
堆排序:应用Java和Python分别实现堆排序算法; 堆排序:应用Java和Python分别实现堆排序算法; 堆排序:应用Java和Python分别实现堆排序算法; 堆排序:应用Java和Python分别实现堆排序算法; 堆排序:应用Java和...
此外,如果你的Python环境不是Jython,还可以考虑使用其他工具,如`jpype`(Java-Python Bridge)或`py4j`,它们提供了不同的方式来实现Java和Python之间的通信。 总结来说,Java调用Python自定义函数主要依赖于如...
Java和Python是目前流行并广泛应用的两种编程语言,各有其特点和应用场景。Java是一种静态类型、面向对象的编程语言,它通过Java虚拟机来执行代码,保证了代码的平台无关性。而Python是一种动态类型的解释型语言,以...
本示例是关于如何使用Java和Python进行Socket通信的演示。 在Java中,Socket类位于`java.net`包下,提供了创建TCP连接的能力。在服务器端,我们需要创建一个ServerSocket监听特定的端口,等待客户端的连接请求。...
在Java中想要调用python程序,可以加入python的依赖包。 Jython是一种完整的语言,而不是一个Java翻译器或仅仅是一个Python编译器,它是一个Python语言在Java中的完全实现。Jython也有很多从CPython中继承的模块库。...
本资源"**C_C++_Java_Python——API**"很可能包含有关这四种编程语言中的API设计、使用和最佳实践的信息。下面将对C、C++、Java和Python这四种语言的API进行深入探讨。 C语言API: C语言是底层编程的基础,它的API...
2. **字符分割**:Java中可以使用`Java2D`或第三方库如`ImageProcessor`进行字符切割。 3. **特征提取和识别**:`Tess4J`可以直接进行字符识别,如果需要使用深度学习模型,可以借助`Deeplearning4j`等库构建和训练...