java调用python实现校验一串字符串是否为单词
在做一个springboot小项目的过程中需要实现一个校验一串字符串是否为单词的接口,网上搜索了一下,发现使用Python很方便
因为python有一个pyenchant
库恰好具备这样的功能
pip install pyenchant
但是java调用python之前并没有接触过
使用jpython来调用的时候总是报一些很奇怪的错误,要么是找不到第三方库,但是添加了库路径进去又报别的错误
由于这个地方只需要传递一个简单的单词的参数过去就行
所以考虑使用sys库通过命令行传递参数的方式来实现,将True或者False打印到控制台给java读取
java只需要拼接命令执行即可
python代码
verify.py
import enchant
import sys
d = enchant.Dict("en_US")
input=sys.argv[1]
print(d.check(input))
采用sys库来获取参数,sys库获取到的参数数组中第一个是文件名,第二个才是word
java代码
String word="hello";String cmd="python H:\python\verify.py "+word;Process process=null;process = Runtime.getRuntime().exec(cmd);InputStreamReader inputStreamReader = new InputStreamReader(process.getInputStream());BufferedReader bufferedReader = new BufferedReader(inputStreamReader);String res=bufferedReader.readLine();if(res.equals("True")){System.out.println("是单词");}else{System.out.println("不是单词");}
在windows上面很容易就实现了功能
在linux上部署则遇见了一个问题
ImportError: The 'enchant' C library was not found and maybe needs to be installed.
原因按照字面意思就是缺少了enchant这个字符库
所以需要进行一下安装
CentOS 7安装Enchant:
yum install enchant
Ubuntu 安装Enchant:
apt-get install libenchant1c2a
顺利解决之后改一改路径就可以实现了
java调用python实现校验一串字符串是否为单词相关推荐
- java调用python,传参json字符串,含中文传参
java调用python,传参json字符串 python脚本内容(test.py) # -*- coding: utf-8 -*-def main(input):return input java调 ...
- Java调用python项目实战
项目中有用到Java调用python的需求,经过各种坑之后,根据业务需求,最终实现Java调用Python的各种情况,现在将总结如下,当然调用的也是Jython,具体原因,下面会介绍,先将代码贴出来. ...
- Java调用python脚本
Java调用python脚本 最近也是刚开始学python,所以这里写了一个简单的小方法用Java来调用python脚本.后期再进行更新. 1.Java启动程序的方法 在Java中提供了两种方法来启动 ...
- .net core 引用jar_Python一键转Jar包,Java调用Python新姿势!
粉丝朋友们,不知道大家看故事看腻了没(要是没腻可一定留言告诉我^_^),今天这篇文章换换口味,正经的来写写技术文.言归正传,咱们开始吧! 今天的这篇文章,聊一个轩辕君之前工作中遇到的需求:如何在Jav ...
- python文件转换成jar包_Python一键转Jar包,Java调用Python新姿势!
粉丝朋友们,不知道大家看故事看腻了没(要是没腻可一定留言告诉我^_^),今天这篇文章换换口味,正经的来写写技术文.言归正传,咱们开始吧! 今天的这篇文章,聊一个轩辕君之前工作中遇到的需求:如何在Jav ...
- Java调用Python
先说句题外话:无论是在C中还是Java中调用Python,当遇到多线程的时候一定要想到GIL锁的存在. 在Python中调用C/C++代码:这也是最常见的混合编程方式.并且有很多优秀的开源项目可以帮助 ...
- Java调用Python遇到的一系列问题与解决方案
Java调用Python遇到的一系列问题与解决方案 参考文章: (1)Java调用Python遇到的一系列问题与解决方案 (2)https://www.cnblogs.com/CQUTWH/p/593 ...
- java和python可以在一个项目中同时使用么-java调用python的几种用法(看这篇就够了)...
java调用python的几种用法如下: 在java类中直接执行python语句 在java类中直接调用本地python脚本 使用Runtime.getRuntime()执行python脚本文件(推荐 ...
- 【Java】使用Java调用Python的四种方法
写在前面 为啥一个好好的岗位是Java开发工程师要去做写python呢?因为产品经理安排的(突然多少有点明白为啥程序员和产品经理会一直开撕).由于在选择企业的时候没看清企业性质,看了要求以为就是互联网 ...
- java 调用python脚本过程_通过Java调用Python脚本
在进行开发的过程中,偶尔会遇到需要使用Java调用Python脚本的时候,毕竟Python在诸如爬虫,以及科学计算等方面具有天然的优势.最近在工作中遇到需要在Java程序中调用已经写好的Python程 ...
最新文章
- python安装cvxpy
- 无法从“const char [10]”转换为“char *”
- PAT甲级1126 Eulerian Path:[C++题解] 欧拉路径、并查集,测试点4有问题请进来
- mybatis-plus代码生成器使用和代码
- java学习(19):巩固练习
- Linux中断(interrupt)子系统之四:驱动程序接口层 中断通用逻辑层
- js调用ajax案例2,使用ok
- 关于input输入框内设置小图标的问题
- Android 简单闪屏
- 201703-1-分蛋糕
- 《Big Data Glossary》笔记
- GitHub 优秀的 Android 开源项目和框架
- 做一个模仿Windows画板喷漆笔刷效果
- setValuesForKeysWithDictionary崩溃
- 降维(Dimensionality Reduction) 是机器学习中的一种重要的特征处理手段
- AI将带我们去何方?(下-展望篇)
- 微信企业号已停止提供企业消息会话服务器,企业微信注册时显示会话服务已经被安装了怎么解决 解决攻略教程大全...
- 不一样的视觉盛宴,Python实现3D地图
- STM32CUBEMX开发GD32F303(16)----移植兆易创新SPI Nor Flash之GD25Q64Flash
- 2012年第23周限时免费游戏应用点评
热门文章
- 2017年《What Hi-Fi?》杂志评选KEF成最大赢家
- 牛客寒假训练营1 K 冒险公社(线性dp)
- Debug---Eclipse断点调试基础
- java aspect demo_Spring AOP + Aspect 实现切面编程
- 低效程序员的九个坏习惯
- 魔兽各服务器位置,魔兽世界怀旧服矿点分布在哪 全地图采矿位置一览(多图)
- 新面貌,新征程—读《新程序员》有感
- 根据身份证号判断该人的年龄、性别、出生年月日
- Python描述 LeetCode 8. 字符串转换整数 (atoi)
- 华裔天才数学家-陶哲轩