分享一份来自中秋节的Python的祝福

查看 193|回复 11
作者:小雨网络   
各位吾友看看有没有需要改进的地方
[Python] 纯文本查看 复制代码import random
# 中秋节祝福语列表
greetings = [
    "1. 月到中秋分外明,情侣家人皆共庆。中秋节快乐!",
    "2. 中秋之际,愿你的生活圆圆满满,幸福甜蜜。",
    "3. 皓月当空,星光闪烁,愿你的未来一片光明,中秋快乐!",
    "4. 月圆人团圆,愿你和家人团团圆圆,幸福美满。",
    "5. 中秋佳节,赏月品茶,愿你的日子也如这一轮明月般辉煌。",
    "6. 满地银光照人眼,愿你的前程一片光明。",
    "7. 月是故乡明,人是故乡情。中秋快乐,思念故乡的亲人。",
    "8. 中秋团圆夜,星光闪烁亮晶晶。愿你的人生也一片美好。",
    "9. 五谷丰登的季节,愿你的生活也充满丰收和幸福。",
    "10. 在这个特别的日子里,愿你的每一天都充满温馨和快乐。",
    "11. 中秋节,愿你的工作事业和家庭生活都步步高升。",
    "12. 月圆人更圆,愿你的幸福也如月亮一样圆满。"
]
def main():
    print("欢迎使用中秋节祝福语小程序!")
    while True:
        print("\n请选择一个祝福语(输入对应的数字,输入 q 退出程序):")
        for greeting in greetings:
            print(greeting)
        
        choice = input("您的选择:")
        
        if choice == 'q':
            print("程序已退出。祝您中秋节快乐!")
            break
        elif choice.isdigit() and 1

中秋节, 中秋

小雨网络
OP
  


Listentomusic 发表于 2023-9-16 19:55
这里我加了一个发送邮件的,我给同事老师发,有时间的话你们也可以改改每个邮箱发送不同的祝福语。
[mw_sh ...

也可以这样随机选择一句祝福语发送到某个邮箱中
[Python] 纯文本查看 复制代码import random
import zmail
# 中秋节祝福语列表
greetings = [
    "1. 月到中秋分外明,情侣家人皆共庆。中秋节快乐!",
    "2. 中秋之际,愿你的生活圆圆满满,幸福甜蜜。",
    "3. 皓月当空,星光闪烁,愿你的未来一片光明,中秋快乐!",
    "4. 月圆人团圆,愿你和家人团团圆圆,幸福美满。",
    "5. 中秋佳节,赏月品茶,愿你的日子也如这一轮明月般辉煌。",
    "6. 满地银光照人眼,愿你的前程一片光明。",
    "7. 月是故乡明,人是故乡情。中秋快乐,思念故乡的亲人。",
    "8. 中秋团圆夜,星光闪烁亮晶晶。愿你的人生也一片美好。",
    "9. 五谷丰登的季节,愿你的生活也充满丰收和幸福。",
    "10. 在这个特别的日子里,愿你的每一天都充满温馨和快乐。",
    "11. 中秋节,愿你的工作事业和家庭生活都步步高升。",
    "12. 月圆人更圆,愿你的幸福也如月亮一样圆满。"
]
# 配置服务
server = zmail.server('邮箱账号', '邮箱授权码')
# 发送五封邮件,每封邮件随机选择一句祝福语
recipients = ['发送邮箱1', '发送邮箱2', '发送邮箱3', '发送邮箱4', '发送邮箱5']
for recipient in recipients:
    random_index = random.randint(0, len(greetings) - 1)
    selected_greeting = greetings[random_index]
   
    # 邮件内容
    mail = {
        'subject': '中秋佳节, 祝您快乐!',
        'content_text': selected_greeting
    }
   
    server.send_mail([recipient], mail=mail)
    print(f'已发送邮件至:{recipient},祝福语:{selected_greeting}')
print('邮件发送完毕...')
lccccccc   

楼主,我又重新做了一个C++版的
基于WINAPI的,初学者,做的不好,欢迎大佬指点!
[C++] 纯文本查看 复制代码#include
#include [i]

using namespace std;

string greetings[] = {
    "1. 月到中秋分外明,情侣家人皆共庆。中秋节快乐!",
    "2. 中秋之际,愿你的生活圆圆满满,幸福甜蜜。",
    "3. 皓月当空,星光闪烁,愿你的未来一片光明,中秋快乐!",
    "4. 月圆人团圆,愿你和家人团团圆圆,幸福美满。",
    "5. 中秋佳节,赏月品茶,愿你的日子也如这一轮明月般辉煌。",
    "6. 满地银光照人眼,愿你的前程一片光明。",
    "7. 月是故乡明,人是故乡情。中秋快乐,思念故乡的亲人。",
    "8. 中秋团圆夜,星光闪烁亮晶晶。愿你的人生也一片美好。",
    "9. 五谷丰登的季节,愿你的生活也充满丰收和幸福。",
    "10. 在这个特别的日子里,愿你的每一天都充满温馨和快乐。",
    "11. 中秋节,愿你的工作事业和家庭生活都步步高升。",
    "12. 月圆人更圆,愿你的幸福也如月亮一样圆满。"
};
int win_w,win_h;
HWND label,wish;
HCRYPTPROV prov;
int random() {
        if (prov == NULL)
                if (!CryptAcquireContext(&prov, NULL, NULL, PROV_RSA_FULL, CRYPT_SILENT | CRYPT_VERIFYCONTEXT))
                        ExitProcess(1);
        int out;
        CryptGenRandom(prov, sizeof(out), (BYTE *)(&out));
        return out & 0x7fffffff;
}
void get_rand(){
        SetWindowText(wish,greetings[random()%((int)(sizeof(greetings)/sizeof(greetings[0])))].c_str());
}
LRESULT CALLBACK WndProc(HWND hwnd, UINT Message, WPARAM wParam, LPARAM lParam) {
        switch(Message) {
                case WM_CREATE: {
                        static HFONT hFont = CreateFont(40,0,0,0,0,FALSE,FALSE,0,DEFAULT_CHARSET,OUT_DEFAULT_PRECIS,CLIP_DEFAULT_PRECIS,DEFAULT_QUALITY,DEFAULT_PITCH|FF_SWISS,"微软雅黑");//创建字体
                        // label
                        label = CreateWindow("static", TEXT("中秋节祝福"), WS_CHILD | WS_VISIBLE | SS_CENTER, 0, 0, win_w, 45, hwnd,
                        (HMENU)1,((LPCREATESTRUCT)lParam)->hInstance,NULL);
                        SendMessage(label,WM_SETFONT,(WPARAM)hFont,TRUE);
                       
                        // wish
                        static HFONT hFont2 = CreateFont(25,0,0,0,0,FALSE,FALSE,0,DEFAULT_CHARSET,OUT_DEFAULT_PRECIS,CLIP_DEFAULT_PRECIS,DEFAULT_QUALITY,DEFAULT_PITCH|FF_SWISS,"微软雅黑");//创建字体
                        wish = CreateWindow("static", TEXT(""), WS_CHILD | WS_VISIBLE | SS_CENTER, 0, 50, win_w, 45, hwnd,
                        (HMENU)1,((LPCREATESTRUCT)lParam)->hInstance,NULL);
                        SendMessage(wish,WM_SETFONT,(WPARAM)hFont2,TRUE);
                       
                        CreateWindow("button", TEXT("随机"), WS_CHILD | WS_VISIBLE | BS_PUSHBUTTON , 100, 150, 100, 45, hwnd,
                        (HMENU)1001,((LPCREATESTRUCT)lParam)->hInstance,NULL);
                       
                        CreateWindow("button", TEXT("退出"), WS_CHILD | WS_VISIBLE | BS_PUSHBUTTON , 300, 150, 100, 45, hwnd,
                        (HMENU)1002,((LPCREATESTRUCT)lParam)->hInstance,NULL);
                               
                        LONG style = GetWindowLong(hwnd, GWL_STYLE);       
                        style &= ~(WS_MAXIMIZEBOX|WS_SIZEBOX|WS_MINIMIZE);       
                        SetWindowLong(hwnd, GWL_STYLE, style);       
                        get_rand();
                        break;
                }
                case WM_COMMAND: {
                        if(LOWORD(wParam)==1001){
                                get_rand();
                        }
                        else if (LOWORD(wParam)==1002) {
                                DestroyWindow(hwnd);
                        }
                    break;
                }
                case WM_DESTROY: {
                        PostQuitMessage(0);
                        break;
                }
                default:
                        return DefWindowProc(hwnd, Message, wParam, lParam);
        }
        return 0;
}
int WINAPI WinMain(HINSTANCE hInstance, HINSTANCE hPrevInstance, LPSTR lpCmdLine, int nCmdShow) {
        WNDCLASSEX wc;
        HWND hwnd;
        MSG Msg;
        memset(&wc,0,sizeof(wc));
        wc.cbSize                 = sizeof(WNDCLASSEX);
        wc.lpfnWndProc         = WndProc; /* insert window procedure function here */
        wc.hInstance         = hInstance;
        wc.hCursor                 = LoadCursor(NULL, IDC_ARROW);
        wc.hbrBackground = (HBRUSH)(COLOR_WINDOW+1);
        wc.lpszClassName = "WindowClass";
        wc.hIcon                 = LoadIcon(NULL, IDI_APPLICATION); /* use "A" as icon name when you want to use the project icon */
        wc.hIconSm                 = LoadIcon(NULL, IDI_APPLICATION); /* as above */
        if(!RegisterClassEx(&wc)) {
                MessageBox(NULL, "Window Registration Failed!","Error!",MB_ICONEXCLAMATION|MB_OK);
                return 0;
        }
       
        win_h = 240;
        win_w = 640;
        hwnd = CreateWindowEx(WS_EX_CLIENTEDGE,"WindowClass","中秋节祝福",WS_VISIBLE|WS_OVERLAPPEDWINDOW,CW_USEDEFAULT,CW_USEDEFAULT,win_w,win_h,NULL,NULL,hInstance,NULL);
        if(hwnd == NULL) {
                MessageBox(NULL, "Window Creation Failed!","Error!",MB_ICONEXCLAMATION|MB_OK);
                return 0;
        }
        while(GetMessage(&Msg, NULL, 0, 0) > 0) {
                TranslateMessage(&Msg);
                DispatchMessage(&Msg);
        }
        return Msg.wParam;
}
Dev C++ 编译通过
fenggod1   

我觉得可以感谢分享
Shinku0721   

小白看下来觉得没什么问题,请问像这种简单的py小程序可以封装成exe文件之类的吗?如果是祝福,要发给家人,总不能是这种形式吧(之前也搜过,但搜索结果和我想知道的不太一样。大佬能告知我这块知识叫什么吗,我想去学一学)
YWQ8   

感谢分享
cayuer   

感谢分析 一直不明白 这个代码要用什么软件才能运行
一块腹肌Leon   

greetings  内容还得再多点 12个用一会就不够了
神秘人945   


Shinku0721 发表于 2023-9-16 15:25
小白看下来觉得没什么问题,请问像这种简单的py小程序可以封装成exe文件之类的吗?如果是祝福,要发给家人 ...

用pyinstaller可以打包
小雨网络
OP
  

[Python] 纯文本查看 复制代码import random
# 中秋节祝福语列表
greetings = [
    "1. 月到中秋分外明,情侣家人皆共庆。中秋节快乐!",
    "2. 中秋之际,愿你的生活圆圆满满,幸福甜蜜。",
    "3. 皓月当空,星光闪烁,愿你的未来一片光明,中秋快乐!",
    "4. 月圆人团圆,愿你和家人团团圆圆,幸福美满。",
    "5. 中秋佳节,赏月品茶,愿你的日子也如这一轮明月般辉煌。",
    "6. 满地银光照人眼,愿你的前程一片光明。",
    "7. 月是故乡明,人是故乡情。中秋快乐,思念故乡的亲人。",
    "8. 中秋团圆夜,星光闪烁亮晶晶。愿你的人生也一片美好。",
    "9. 五谷丰登的季节,愿你的生活也充满丰收和幸福。",
    "10. 在这个特别的日子里,愿你的每一天都充满温馨和快乐。",
    "11. 中秋节,愿你的工作事业和家庭生活都步步高升。",
    "12. 月圆人更圆,愿你的幸福也如月亮一样圆满。"
]
def main():
    print("欢迎使用中秋节祝福语小程序!")
    random_greeting = random.choice(greetings)
    print("\n随机祝福语如下:")
    print(random_greeting)
if __name__ == "__main__":
    main()
修改了一下原来的好像有bug、这个代码是随机显示一条
您需要登录后才可以回帖 登录 | 立即注册

返回顶部