当前仓库属于暂停状态,部分功能使用受限,详情请查阅 仓库状态说明
1 Star 0 Fork 6

adward/冰枫蓝叶聊天女仆
暂停

加入 Gitee
与超过 1200万 开发者一起发现、参与优秀开源项目,私有仓库也完全免费 :)
免费加入
文件
克隆/下载
libmaid.py 2.93 KB
一键复制 编辑 原始数据 按行查看 历史
橙子猫(冰枫火灵X) 提交于 2020-06-16 01:38 . 3.0
#!/usr/bin/python3
# -*- coding:UTF-8 -*-
#作品名称:冰枫蓝叶聊天女仆 - 答句库
#作者:冰枫蓝叶自由文化社区团队 - 冰枫火灵X
#许可证:GNU LGPL v3
#版本:v2.0
import os
import sys
import time
import libmaidtimer
import random
def main(us,namex,mn):
#回答
c=us
if not os.access('dict.maid',os.F_OK):return ["词典文件“dict.maid”不存在","当前目录:"+os.path.abspath('./')]
maiddict = open('dict.maid','r',encoding='UTF-16')
listmaid = maiddict.readlines()
linenum = 1
#print(listmaid)
#使用字典前的指定回答
if '几点了' in us:
c='报告小主人,现在'+libmaidtimer.tt()+'啦~'
return list(c)
if '现在时间' in us or '现在日期' in us:
c = str(libmaidtimer.fulltt())
return list(c)
for maidcontent in listmaid:
if '#' in maidcontent or maidcontent == '\n':
linenum+=1
continue
if len(maidcontent.split("::")) != 3:
with open('maidcfg/chat-text.txt','a+',encoding='UTF-16') as FormatError:
FormatError.write("\n词典文件格式有误,在第{:d}行".format(linenum))
linenum+=1
continue
#print(maidcontent,len(maidcontent.split("::")))
contentlist = maidcontent.split('::')
mode = contentlist[0]
wen = contentlist[1].format(mn=mn,namex=namex)
da = contentlist[2].strip('\n').format(mn=mn,namex=namex)
#print('--'+mode+'--'+wen+'--'+da)
#print("||||"+c)
if mode == 'R':
for wenju in wen.split('|'):
#print("||"+wenju)
c = c.replace(wenju,random.choice(da.split('|')))
elif mode == 'A':
for wenju in wen.split('|'):
if wenju in c:
#print(wenju)
c = random.choice(da.split('|'))
break
return c
linenum+=1
#字典
#如果这个问句不支持,女仆将会表示听不懂
if us == c:
c=c.replace(mn,'小主人,怎么啦?%s在这里哦!'%(mn)).replace(namex,'主人,您……').replace('我','您').replace('你','莪')
if us == c:
cl=['“'+c+'”'+'是啥意思呀?'+mn+'没听明白呢~', '“'+c+'”?'+"这是什么?...",'喵...?“'+c+'”指的是什么呀?*歪头眨巴着水灵灵的大眼睛*']
c=random.choice(cl)
#如果没有使用指令,将会正常按照字典来返回值
return c.split('\\n')
if __name__ == '__main__':
try:
if not len(sys.argv) == 2:
pr = str(main(sys.argv[1],sys.argv[2],sys.argv[3]))
else:
pr = str(main(sys.argv[1],'小主人','小女仆'))
except IndexError as dir2:
print("请设定完整参数<问句/主人名字/女仆名字>")
sys.exit(0)
print(str(pr))
Loading...
马建仓 AI 助手
尝试更多
代码解读
代码找茬
代码优化
Python
1
https://gitee.com/iilicshi/CHAT-ROBOT.git
[email protected]:iilicshi/CHAT-ROBOT.git
iilicshi
CHAT-ROBOT
冰枫蓝叶聊天女仆
master

搜索帮助