猫史档案馆


【Python作品分享】Name2023新春特惠【作品秀】

用户:勇敢小豆豆勇敢小豆豆查看:0 回复:1 评论:0 创建时间:2022-12-15T11:35:26


【作品展示】

center_image

 

【作品介绍】

这是官方发布的一年请回馈版本,补丁包不会更新此版本,给大家留作纪念,补丁包将会在不久发布,让大家更快捷的更新main

 

【作品源代码】

import tkinter as tk
import tkinter.messagebox
import os
import time
import easygui

"""
1.0.0:初步确定用python制作,语法与python相似
1.0.2:尝试融入其他语言特点,以javascript注释为尝试
2.0.0:确定语法为综合式语法,尝试融入java概念,并融入c开头的main函数,完成基本方法开发测试
2.1.0:正式命名,并确定高级概念定义,完成变量编译包的大部分代码
2.1.5:取消return...as...语法,并优化变量包代码
2.2.6:完成main.get.in返回变量代码,优化基本方法返回数据代码
2.3.3:优化输出方法,并优化变量定义方法
2.4.6:简化基本方法代码,完成爱国禁用代码开发
2.4.8:优化float类型代码,优化高级概念部分代码
"""

"""
朋友们,欢迎您使用Name2023新春特惠版,这是name发布
的第二个稳定版本

解释器名称:main
解释器版本:2.4.8
官方图标:拿拿
语言版本号:1.9.3

pyname公司祝您和家人春节快乐!
"""

a = tkinter.messagebox.askyesno(title="是否下载Name",message="你是喵或日本人吗")
if a == True:
    print("喵的,想用中国人的东西先想想你干啥来着吧")
    quit()
else:
    print("尊敬的客户你好")
day = time.localtime()
if day.tm_year == 2023 and day.tm_mon == 1 and day.tm_day == 1:
    a = tkinter.messagebox.askyesno(title="是否下载Name",message="该应用可能会扫描你的电脑,破坏你的系统,你确定要下载吗")
    if a == True:
        # 文件夹安装
        a = os.path.exists("C://")
        if a == True:
            os.makedirs("C://Name1.8.6 IDLE")
            f1 = open("C://Name1.8.6 IDLE//Name(1.8.6)IDLE.txt","w")
            f1.write("""import os
    import sys
    import random
    import math
    import time

    code = 0
    sj = ""
    var_list = {"return_var":{},"private_var":{},}
    list_list = {}
    dict_list = {}
    var_package = [False,False]


    def Error(error_type):
        print('Code Errror')
        if error_type == 1:
            print("name(1.8.6)>main>'ImportError'")
        elif error_type == 2:
            print("name(1.8.6)>main>'ValueError'")
        elif error_type == 3:
            print("name(1.8.6)>main>'NameError'")
        elif error_type == 4:
            print("name(1.8.6)>main>'TypeError'")
        elif error_type == 5:
            print("name(1.8.6)>main>PackageError")
        elif error_type == 6:
            print("name(1.8.6)>main>FunctionError")
        elif error_type == 7:
            print("name(1.8.6)>main>OtherError")

    def put_in():
        a = input("{} {}{}" .format(code+1,">>> ",sj))
        return a

    def var(name,value,typy):
        if name in var_list["return_var"]:
            Error(2)
            print("system return var can't be other word")
        else:
            var_list["private_var"][name]=[value,"private",typy]      
    def var_error():
        Error(3)
        print("var name error")

    def var_2(value):
        typy = ""
        num_list = ['1','2','3','4','5','6','7','8','9','0']
        if '"' in value:
            if value[len(value)-1] == '"' and value[0] == '"':
                typy = "str"
            else:
                Error(2)
                print('''str '"' use error''')
        elif value == 'True':
            typy = "bool"
        elif value == "False":
            typy = "bool"
        else:
            num_num = 0
            error_num = 0
            dot_num = 0
            type_float = True
            for i in value:
                if i in num_list:
                    num_num +=1
                else:
                    error_num +=1
            if error_num == 0:
                typy = "int"
            elif error_num > 0 and num_num > 0:
                word_list = list(value)
                for i in word_list:
                    if i in num_list:
                        continue
                    elif i == ".":
                        if dot_num == 0:
                            dot_num +=1
                        else:
                            type_float = False
                            Error(4)
                            print("type float only can have one dot")
                    else:
                        Error(4)
                        print("type float don't have",i)
                        type_float = False
                if type_float == True:
                    typy = "float"
                else:
                    typy = "error"
        return typy
    main = False
    while main == False:
        a = input("{}{}".format(code+1," >>> "))
        if a == "main.public()":
            main = True
            code +=1
        elif a[0:3] == "// ":
            code +=1
            continue
        elif a == "":
            code +=1
            continue
        else:
            Error(5)
            code +=1
    class_main = False
    while class_main == False:
        a = input("{}{}".format(code+1," >>> "))
        if a == "class main(public):":
            code +=1
            class_main = True
            sj = "    "
        elif a[0:3] == "// ":
            code +=1
            continue
        elif a == "":
            code +=1
            continue
        else:
            Error(6)
            code +=1
    while True:
        b = put_in()
        code +=1
        if b[0:13] == "main.put.out(" and b[len(b)-1] == ")" in b:
            if b.count('"') == 2:
                if b == 'main.put.out("")':
                    Error(2)
                    continue
                else:
                    print(b[14:len(b)-2])
            elif b == 'main.put.out()':
                Error(2)
                print("main only can print str and var")
                continue
            else:
                value = b[13:len(b)-1]
                if value in var_list["return_var"] or value in var_list["private_var"]:
                    if value in var_list["return_var"]:
                        print(var_list["return_var"][value][0])
                    else:
                        if var_list["private_var"][value][1] == "public":
                            print(var_list["private_var"][value][0])
                        else:
                            Error(2)
                            continue
                else:
                    Error(1)
                    continue
        elif 'main.get.in("' in b and '")' in b or "None" in b:
            if "None" in b:
                get_in  = put_in()
                var_list["return_var"]["get_in"]=[get_in,"public","str"]
            else:
                input_value = b[13:len(b)-2]
                get_in = input(input_value)
                var_list["return_var"][input_value]=[get_in,"public","str"]
        elif b == "main.clear()":
            os.system("cls")
            code = 0
        elif b == "main.quit()":
            time.sleep(0.8)
            print("name(1.8.6) main quit")
            print("name(1.8.6) IDLE exit")
            print("name(1.8.6) IDLE window close")
            time.sleep(0.8)
            break
        elif b == "main.version()":
            var_list["return_var"]["version_num"]=['''/Name 1.8.6/
    /Main 2.4.6/
    /Nana 1.2.5/''',"public","str"]
        elif b[0:3] == "// ":
            continue
        elif b == "":
            continue
        elif "def" in b:
            if b[0:8] == "def var " and var_package[0] == True:
                if var_package[0] == True:
                    if len(b[9:b.index("=")]) == 1:
                        var_name = b[8]
                        var_value = b[b.index("=")+2:len(b)+1]
                    else:
                        var_name = b[8:b.index("=")-1]
                        var_value = b[b.index("=")+2:len(b)+1]
                    if " " in var_name:
                        var_error()
                    elif var_name[0] in ['1','2','3','4','5','6','7','8','9','0']:
                        var_error()
                    else:
                        error_num = 0
                        var_word = list("abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ_1234567890")
                        for i in var_name:
                            if i in var_word:
                                pass
                            else:
                                error_num +=1
                        if error_num == 0:
                            var_type = var_2(var_value)
                            if var_type == "error":
                                continue
                            else:
                                var(var_name,var_value,var_type)
                        else:
                            var_error()
            else:
                Error(5)
                print("if you want to def a var,you must import var's package before this")
                continue
        elif b[0:12] == "main.public(":
            public_value = b[12:len(b)-1]
            if public_value in var_list["private_var"]:
                if var_list["private_var"][public_value][1] == "public":
                    Error(4)
                    print("this var has been a public var")
                else:
                    var_list["private_var"][public_value][1] = "public"
            elif public_value in var_list["return_var"]:
                Error(4)
                print("this var has been a public var")
            else:
                Error(2)
                print("main don't have var",public_value)
        elif b[0:15] == "import package ":
            package = b[15:len(b)+1]
            if package == "var":
                var_package[0] = True
        else:
            Error(3)
            print("main don't have",b)
            continue""")
            f1.close()
            os.rename("C://Name1.8.6 IDLE//Name(1.8.6)IDLE.txt","C://Name1.8.6 IDLE//Name(1.8.6)IDLE.py")
    else:
        quit()

    # name1.8.6程序安装
    window = tk.Tk()
    window["background"] = "green"
    window.title("Name 官方下载渠道")
    titl_1 = tk.Label(window,text="您以下载Name语言官方安装包!")
    titl_1.pack()
    iamge = tk.PhotoImage(file="C://users//60149//Desktop//Name.png")
    image_label = tk.Label(window,image=iamge)
    image_label.pack()
    window.mainloop()
else:
    print("春节未至,敬请期待")
    while True:
        time.sleep(1)
    quit()

 

【提示】

部分含有Python第三方库相关内容的作品,在海龟编辑器网页端无法运行哦!如遇到这种情况,可以打开下面的链接,下载海龟编辑器客户端:

https://python.codemao.cn


回复

上一页1 页 / 共 1下一页
勇敢小豆豆勇敢小豆豆

欢迎大家继续喵name的相关产品

点赞0


评论