芬兰语连字符与诗歌分析

finmeter的Python项目详细描述


芬兰米

芬米是一个分析芬兰语诗歌的图书馆。它使用典型的押韵,如头韵、协和音、日式音步和卡莱瓦拉音步它也可以用来连接芬兰语。

连字号

芬兰语的单词可以分成这样的音节

import finmeter print( finmeter.hyphenate(“hattu”) ) >> hat-tu print( finmeter.syllables(“hattu”) ) >> [“hat”, “tu”] print( finmeter.count_sentence_syllables(“kissa juoksi”) ) >> 4

##押韵

FinMeter可以用来检查两个单词是否押韵

import finmeter print( finmeter.assonance(“ladata”, “ravata”) ) #True print( finmeter.consonance(“kettu”, “katti”) ) #True print( finmeter.full_rhyme(“pallolla”, “kallolla”) ) #True print( finmeter.alliteration(“voi”, “vehnä”) ) #True

音节表

基于音节数的米可以用FinMeter来评估

import finmeter print( finmeter.list_possible_meters() ) >> [‘tanka’, ‘kalevala’, ‘katauta’, ‘sedooka’, ‘bussokusekika’, ‘haiku’, ‘chooka’] print( finmeter.assess_meter(“kissa juokseenkovaa juoksee”, “haiku”) ) >> {‘verse_results’: [(False, ‘4/5’), (False, ‘4/7’)], ‘poem_length_error’: ‘2/3’, ‘poem_length_ok’: False}

其结果是一本字典,其中包含了“诗的结果”中每一节的韵律和“诗的长度错误”中的总长度的信息。注意:对于Kalevala,应该使用analyze\u Kalevala

##Kalevala仪表

Kalevala meter的功能考虑到诗意的脚,并接受多达10个音节的诗句,前提是满足某些诗意规则此外,该方法还评估了kalevala的其他重要特征

import finmeter print( finmeter.analyze_kalevala(“Vesi vanhin voitehistanJänö juoksi järveen”) ) >> [{‘base_rule’: {‘message’: ‘’, ‘result’: True}, ‘verse’: u’Vesi vanhin voitehista’, ‘normal_meter’: True, ‘style’: {‘alliteration’: True, ‘viskuri’: True}}, {‘base_rule’: {‘message’: ‘Not enough syllables’, ‘result’: False}, ‘verse’: u’Jxe4nxf6 juoksi jxe4rveen’, ‘style’: {‘alliteration’: True, ‘viskuri’: True}}]

该方法返回每一节的分析结果列表。如果基调是真的,那就意味着这首诗在音节和韵脚上都遵循卡列瓦拉韵律。

##音节长度

要检查音节是否短,请使用以下方法

import finmeter print( finmeter.is_short_syllable(“tu”) )

引用

目前,请引用以下出版物,说明您正在使用诗歌机器的押韵功能。

H_m_l_inen,Mika(2018年)。诗歌机器-一个联合创作的NLG诗歌写作网络应用程序在第11届自然语言生成国际会议:会议记录(第195-196页)

欢迎加入QQ群-->: 979659372 Python中文网_新手群

推荐PyPI第三方库


热门话题
使用INTEGER的java实例。parseInt和字符串转换方法   Java Eclipse项目设置在某处导致FileNotFound错误   如何在java中重写scala def close():Future[Unit]   java强制应用程序使用特定文件夹中的dll   javascript调用java方法,并从jsp中的下拉选择中设置参数值   使用aspectJ的java拦截静态方法   java Double。最小值未按预期工作   java如何使用WebDriverWait。直到没有定位器?   在Java中不同时区和不同DST之间转换unix时间戳   java Why语句不返回结果   数组为什么这个Clojure代码比Java中的其他代码慢?   java Rest+Spring AOP+接口不注入   java Tinylog与池连接一起工作吗?   使用jquery调用java Web服务   返回utf8的java Calendar getDisplayName