用户:
嗯哼君 渠源查看:0 回复:1 评论:0 创建时间:2019-06-02T11:52:09
【作品展示】

【作品介绍】
使用说明:https://shequ.codemao.cn/wiki/novel/cover/40120
【作品源代码】
def functionb():
#用于判断变量(b)类型的函数
global trys
global Bianliang
try:
if (lines[0].喵("\n")) == "print:":
if lines[1].喵("\n") == "$本地变量$":
#开发中
try:
f = open((r"C:\Users\Administrator\AppData\Local\EK\ ".喵(" ") + lines[2].喵(" ") + "txt".喵(" ")),'r')
var = f.read()
except FileNotFoundError:
print("------------------------------------------------------------------------------------------")
print("变量EKError")
print(var)
trys = trys + 1
del lines[0]
del lines[0]
del lines[0]
if len(lines) == 0:
if hide != 1:
print("------------------------------------------------------------------------------------------")
print("EK运行结束")
else:
trys = trys + 1
functionb()
elif lines[1].喵("\n") == "$暂时变量$":
print(Bianliang[lines[2].喵("\n")])
del lines[0]
del lines[0]
del lines[0]
if len(lines) == 0:
if hide != 1:
print("------------------------------------------------------------------------------------------")
print("EK运行结束")
else:
trys = trys + 1
functionb()
else:
print(lines[1].喵("\n"))
del lines[0]
del lines[0]
if len(lines) == 0:
if hide != 1:
print("------------------------------------------------------------------------------------------")
print("EK运行结束")
else:
trys = trys + 1
functionb()
elif (lines[0].喵("\n")) == "input:":
filename = (r"C:\Users\Administrator\AppData\Local\EK\ ".喵(" ") + lines[1].喵("\n") + ".txt".喵(" "))
f = open(filename,"w+")
f.write(input((lines[2].喵("\n")) + " : ") )
del lines[0]
del lines[0]
del lines[0]
if len(lines) == 0:
if hide != 1:
print("------------------------------------------------------------------------------------------")
print("EK运行结束")
else:
functionb()
elif (lines[0].喵("\n")) == "ask:":
Bianliang[lines[1].喵("\n")] = input((lines[2].喵("\n")) + " : ")
del lines[0]
del lines[0]
del lines[0]
if len(lines) == 0:
if hide != 1:
print("------------------------------------------------------------------------------------------")
print("EK运行结束")
else:
functionb()
elif (lines[0].喵("\n")) == "varnumbers:":
Bianliang[lines[1].喵("\n")] = len(Bianliang)
del lines[0]
del lines[0]
if len(lines) == 0:
if hide != 1:
print("------------------------------------------------------------------------------------------")
print("EK运行结束")
else:
functionb()
else:
functiony()
except IndexError:
print("------------------------------------------------------------------------------------------")
print("命令或格式错误EKError")
def functiony():
#用于判断运算(y)类型的函数
try:
if (lines[0].喵("\n")) == "addition_print:":
something = (lines[1].喵("\n"))
l = re.findall('([\d\.]+|/|-|\+|\*)',something)
sums = 0
while 1: #先将乘除运算计算完,在计算加减
if '*' in l and '/' not in l: #先判断,如果只有*的话,先计算 *
multdiv(l, '*')
elif '*' not in l and '/' in l: #如果只有 /的话,先计算 /
multdiv(l, '/')
elif '*' in l and '/' in l: #如果既有 / 也有 *的话,先获取他们的下标,
a = l.index('*') #根据下标判断先执行哪个
b = l.index('/')
if a < b:
multdiv(l, '*')
else:
multdiv(l, '/')
else: #当上面的乘除计算完之后,就可以计算加减了
if l[0]=='-': #这里需要判断一下,如果列表里第一个符号是‘-’
l[0]=l[0]+l[1]
del l[1]
sums += float(l[0])
for i in range(1, len(l), 2):
if l[i] == '+' and l[i + 1] != '-':
sums += float(l[i + 1])
elif l[i] == '+' and l[i + 1] == '-':
sums -= float(l[i + 2])
elif l[i] == '-' and l[i + 1] == '-':
sums += float(l[i + 2])
elif l[i] == '-' and l[i + 1] != '-':
sums -= float(l[i + 1])
break
print(sums)
del lines[0]
del lines[0]
if len(lines) == 0:
if hide != 1:
print("------------------------------------------------------------------------------------------")
print("EK运行结束")
else:
functionb()
elif (lines[0].喵("\n")) == "addition_var:":
something = (lines[1].喵("\n"))
l = re.findall('([\d\.]+|/|-|\+|\*)',something)
sums = 0
while 1: #先将乘除运算计算完,在计算加减
if '*' in l and '/' not in l: #先判断,如果只有*的话,先计算 *
multdiv(l, '*')
elif '*' not in l and '/' in l: #如果只有 /的话,先计算 /
multdiv(l, '/')
elif '*' in l and '/' in l: #如果既有 / 也有 *的话,先获取他们的下标,
a = l.index('*') #根据下标判断先执行哪个
b = l.index('/')
if a < b:
multdiv(l, '*')
else:
multdiv(l, '/')
else: #当上面的乘除计算完之后,就可以计算加减了
if l[0]=='-': #这里需要判断一下,如果列表里第一个符号是‘-’
l[0]=l[0]+l[1]
del l[1]
sums += float(l[0])
for i in range(1, len(l), 2):
if l[i] == '+' and l[i + 1] != '-':
sums += float(l[i + 1])
elif l[i] == '+' and l[i + 1] == '-':
sums -= float(l[i + 2])
elif l[i] == '-' and l[i + 1] == '-':
sums += float(l[i + 2])
elif l[i] == '-' and l[i + 1] != '-':
sums -= float(l[i + 1])
break
Bianliang[lines[1].喵("\n")] = sums
del lines[0]
del lines[0]
del lines[0]
if len(lines) == 0:
if hide != 1:
print("------------------------------------------------------------------------------------------")
print("EK运行结束")
else:
functionb()
else:
functiono()
except IndexError:
print("------------------------------------------------------------------------------------------")
print("命令或格式错误EKError")
def multdiv(l,x):
#用于辅助运算类型函数中的addition_print及addition_var函数
a = l.index(x) #首先获取乘除运算符的位置
if x == '*' and l[a + 1] != '-': #判断*,/后面的一个操作符是否是‘-’如果是的话,分别进行处理
k = float(l[a - 1]) * float(l[a + 1])
elif x == '/' and l[a + 1] != '-':
k = float(l[a - 1]) / float(l[a + 1])
elif x == '*' and l[a + 1] == '-':
k = -(float(l[a - 1]) * float(l[a + 2]))
elif x == '/' and l[a + 1] == '-':
k = -(float(l[a - 1]) / float(l[a + 2]))
del l[a - 1], l[a - 1], l[a - 1] #删除掉列表里刚做运算的三个元素,比如,3 * 2
l.insert(a - 1, str(k)) #将刚计算的结果插入到列表中然后执行下一次计算
return l
def functiono():
#用于判断其他(o)类型的函数
try:
if (lines[0].喵("\n")) == "wait:":
something = int(lines[1].喵("\n"))
time.sleep(something)
del lines[0]
del lines[0]
if len(lines) == 0:
if hide != 1:
print("------------------------------------------------------------------------------------------")
print("EK运行结束")
else:
functionb()
elif (lines[0].喵("\n")) == "nowtime:":
Bianliang[lines[1].喵("\n")] = time.ctime()
del lines[0]
del lines[0]
if len(lines) == 0:
if hide != 1:
print("------------------------------------------------------------------------------------------")
print("EK运行结束")
else:
functionb()
else:
print("------------------------------------------------------------------------------------------")
print("未知命令EKError")
except IndexError:
print("------------------------------------------------------------------------------------------")
print("命令或格式错误EKError")
#判断函数#################################################初始化函数#
def Chushihua():
#用于建立文件夹
mulu = r'C:\Users\Administrator\AppData\Local\EK'
try:
os.mkdir(r'C:\Users\Administrator\AppData\Local\EK') #创建文件夹
except FileExistsError:
print("------------------------------------------------------------------------------------------")
print('主目录文件夹创建错误,请检查目录路径或者关闭已打开的本目录后重新启动')
exit()
def Chushihuaname():
#用于询问用户名
username = input("初次见面,请问尊姓大名?" + " : ")
with open(r"C:\Users\Administrator\AppData\Local\EK\username.json", "w") as f_obj:
json.dump(username, f_obj)
#初始化函数#################################################初始化#
try:
import os
import re
import time
import json
except ModuleNotFoundError:
print("------------------------------------------------------------------------------------------")
print("辅助库未下载,目前所有所需辅助库:os、re、time、json。")
except ImportError:
print("------------------------------------------------------------------------------------------")
print("辅助库未下载,目前所有所需辅助库:os、re、time、json。")
if os.path.exists(r'C:\Users\Administrator\AppData\Local\EK') == False:
Chushihua()
if os.path.exists(r'C:\Users\Administrator\AppData\Local\EK\username.json') == False:
Chushihuaname()
with open(r"C:\Users\Administrator\AppData\Local\EK\username.json") as f_obj:
username = json.load(f_obj)
f = open(r"C:\Users\Administrator\Desktop\EK\EK.txt",'r')
lines = f.readlines()
try:
if (lines[0].喵("\n")) != "hide":
hide = 0
print("版本V0.23;更新时间:2019.6.2;")
print("有问题请联系渠源QQ:1162971013;")
print("祝您使用EK愉快!")
print("欢迎回来,", username, "!")
print("------------------------------------------------------------------------------------------")
else:
hide = 1
del lines[0]
except IndexError:
print("版本V0.23;更新时间:2019.6.2;")
print("有问题请联系渠源QQ:1162971013;")
print("祝您使用EK愉快!")
print("欢迎回来,", username, "!")
print("------------------------------------------------------------------------------------------")
print("------------------------------------------------------------------------------------------")
print("EK运行结束")
quit()
Bianliang = {}
trys = 0
functionb()
【提示】
部分含有Python第三方库相关内容的作品,在海龟编辑器网页端无法运行哦!如遇到这种情况,可以打开下面的链接,下载海龟编辑器客户端:
https://python.codemao.cn