明天就是5.20,这几个c语言表白代码发给你喜欢的女生,要是还没有女朋友直接来找我!!!


转眼间,今天好像已经2021年5月19日,明天好像是5月20号哎!😔
没想到吧!一年一度的5.20它又来了。
又,又又又又又又来了!
在这里插入图片描述

它踩着单生狗的身体,贱贱的向我们走来。😱
是不是比去年的更早了一些。🤭
在这里插入图片描述
不是吧,不是吧,
在这里插入图片描述
真的还有程序员没有女朋友吧!!😮
啥,不是吧,不是吧,
真的有人会选择孤独终老吧。
在这里插入图片描述
赶紧拿上我给你准备的礼物,去表白吧!
在这里插入图片描述
在这里插入图片描述

在这里插入图片描述


一、跑出桃心、爱情就来!

#include<stdio.h>
#include<math.h>
#include<windows.h>
#include<time.h>
#define U 0.1
#define V 0.053
void SetColor(unsigned short ForeColor,unsigned short BackGroundColor)
{HANDLE hCon=GetStdHandle(STD_OUTPUT_HANDLE);SetConsoleTextAttribute(hCon,(ForeColor%16)|(BackGroundColor%16*16));
}
int main()
{int i,s=0,t,a=10,b=11,c=12,d=13,e=14;int z[] = {32,32,206,210,207,178,187,182,196,227,33,32,32};float x,y;srand(time(NULL));for(y=1.3;y>=-1.1;y-=U){for(x=-2;x<1.4;x+=V){if((((x*x+y*y-1)*(x*x+y*y-1)*(x*x+y*y-1)-x*x*y*y*y)<=0)){if(y>=1.3-10*U||y<=1.3-11*U){s++;if(s%4==1){SetColor(a,0);printf("l");}if(s%4==2){SetColor(e,0);printf("o");}if(s%4==3){SetColor(c,0);printf("v");}if(s%4==0){SetColor(d,0);printf("e");}}else{ for(i = 0;i < 42;i++){ if(i<=14||i>=28){s++;if(s%4==1){SetColor(a,0);printf("l");}if(s%4==2){SetColor(e,0);printf("o");}if(s%4==3){SetColor(c,0);printf("v");}if(s%4==0){SetColor(d,0);printf("e");}}else{SetColor(b,0);printf("%c", z[i-15]);Sleep(50);}}break;}}elseprintf(" ");Sleep(1);}printf("\n");}printf("按任意键继续!");getchar(); while(1){system("cls");t=a;a=b;b=c;c=d;d=e;e=t;for(y=1.3;y>=-1.1;y-=U){for(x=-2;x<1.4;x+=V){if((((x*x+y*y-1)*(x*x+y*y-1)*(x*x+y*y-1)-x*x*y*y*y)<=0)){if(y>=1.3-10*U||y<=1.3-11*U){s++;if(s%4==1){SetColor(a,0);printf("l");}if(s%4==2){SetColor(b,0);printf("o");}if(s%4==3){SetColor(c,0);printf("v");}if(s%4==0){SetColor(d,0);printf("e");}}else{ for(i = 0;i < 42;i++){ if(i<=14||i>=28){s++;if(s%4==1){SetColor(a,0);printf("l");}if(s%4==2){SetColor(b,0);printf("o");}if(s%4==3){SetColor(c,0);printf("v");}if(s%4==0){SetColor(d,0);printf("e");}}else{SetColor(e,0);printf("%c", z[i-15]);}}break;}}elseprintf(" ");}printf("\n");}Sleep(1000);system("cls");}
}

在这里插入图片描述


二、我要用心铺满你的心!

#include <stdio.h>
#include <math.h>
#include <stdio.h>int main()
{float y, x, z, f;for (y = 1.5f; y > -1.5f; y-=0.1f){for (x = -1.5f; x < 1.5f; x += 0.05f){z = x*x + y*y -1;f = z*z*z - x*x*y*y*y;putchar(f <= 0.0f ? "*********"[(int)(f*-8.0f)]:' ');}putchar('\n');}getchar();return 0;
}

在这里插入图片描述


三、执子之手,与子偕老!

#include<stdio.h>
#include<math.h> 
int main(){printf("\t\t\t\t\t  520快乐\n\n");											printf("\t\t\t\t执子之手,\t\t与子偕老!\n");for(double y=1.9;y>-1.2;y-=0.1){for(double x=-1.8;x<2.6;x+=0.04){if(x*x+ (y- pow(x*x,1.0/3) )*(y- pow(x*x,1.0/3) ) <=1)	printf("*");	else if(x<=-1.4 && x>=-1.7 &&y<=1.6 &&y>=-1.1)			printf("*");	else if(x>=1.4 && x<=1.6 &&y<=1.6 &&y>=-1.1)			printf("*");	else if(x>=2.3 && x<=2.5 &&y<=1.6 &&y>=-1.1)			printf("*");else if(x>=1.6 && x<=2.3 &&y<=-0.7 &&y>=-1.1)			printf("*");		else	printf(" ");														 }printf("\n");}return 0;
}

在这里插入图片描述


四、每一句话,都代表我爱你!

#include <stdio.h>
#include <math.h>
#include <windows.h>
#include <tchar.h>
#include <pthread.h> 
#include <time.h>
#include <string.h>
#include <sys/time.h>pthread_mutex_t mutex;
pthread_cond_t cond;
HANDLE o = GetStdHandle(STD_OUTPUT_HANDLE);
_TCHAR buffer[25][80] = { _T(' ') };
_TCHAR ramp[] = _T(".:-=+*#%@");WORD hjzgg_color[7]={BACKGROUND_INTENSITY|FOREGROUND_INTENSITY|FOREGROUND_RED | BACKGROUND_RED|BACKGROUND_GREEN, //red on yellowBACKGROUND_INTENSITY|FOREGROUND_INTENSITY|FOREGROUND_GREEN | BACKGROUND_RED|BACKGROUND_GREEN,BACKGROUND_INTENSITY|FOREGROUND_INTENSITY|FOREGROUND_BLUE | BACKGROUND_RED|BACKGROUND_GREEN,BACKGROUND_INTENSITY|FOREGROUND_INTENSITY|FOREGROUND_RED|FOREGROUND_GREEN|FOREGROUND_BLUE | BACKGROUND_RED|BACKGROUND_GREEN,BACKGROUND_INTENSITY|FOREGROUND_INTENSITY|FOREGROUND_RED|FOREGROUND_GREEN | BACKGROUND_RED|BACKGROUND_GREEN,BACKGROUND_INTENSITY|FOREGROUND_INTENSITY|FOREGROUND_GREEN|FOREGROUND_BLUE | BACKGROUND_RED|BACKGROUND_GREEN,BACKGROUND_INTENSITY|FOREGROUND_INTENSITY|FOREGROUND_RED|FOREGROUND_BLUE | BACKGROUND_RED|BACKGROUND_GREEN};float f(float x, float y, float z) {float a = x * x + 9.0f / 4.0f * y * y + z * z - 1;return a * a * a - x * x * z * z * z - 9.0f / 80.0f * y * y * z * z * z;
}float h(float x, float z) {for (float y = 1.0f; y >= 0.0f; y -= 0.001f)if (f(x, y, z) <= 0.0f)return y;return 0.0f;
}char flower1[11][22]={//一行20个字符 
"         {@}        ",
"      {@} * {@}     ",
"   {@} * {@} * {@}  ",
"{@}* {@} * {@} * {@}",
" \\ {@} * {@} * {@} /",
"    \\ \\ \\ L / / /   ",
"     \\\\ \\ O / //    ",
"       \\\\ V //      ",
"        \\\\E//       ",
"         >=<        ",
"        //*\\\\       "
};char flower2[9][28]={//一行27个字符 
".....@---------------@.....",
"-- @ @ @ --------- @ @ @ --",
".@ @\\@/@ @-------@ @\\@/@ @.",
".\\@|@|@|@/-....--\\@|@|@|@/.",
". \\\\\\|/// --..--- \\\\\\|/// -",
" - \\\\|// --..----- \\\\|//.--",
" -- \\|/--..---.---- \\|/---.",
" -- =&= ---..------ =&= ---",
" -- /|\\ --------.---/|\\ -.-"
} ;char piercing_arrow[][34]={//一行33个字符 
"      ☆☆ ☆☆  ☆☆ ☆☆       ",
"     ★★      ★       ★★     ",
"    ☆☆   快乐每一天    ☆☆    ",
"     ★★               ★★     ",
">>>---------I LOVE YOU --------->",
"        ★★         ★★        ",
"          ☆☆     ☆☆          ",
"            ★★  ★★           ",
"               ☆☆              "
};char love_word[][6][60]={//一共5个部分, 三行情书 { "你  如  水  的  眸  光  笼  着  江  南  的  烟  雨","映  入  我  那  一  寸  一  寸  消  融  的  心","从  那  一  刻  我  不  在  属  于  自  己"},{"我  默  默  收  集  你  的  所  有","不  知  还  要  多  久","却  不  曾  厌  倦"},{"当  初 ,初  见  只  道  是  寻  常","寻  觅 ,何  枝  可  化  深  千  亿","犹  道 ,碧  桃  影  里  碧  三  声" } ,{"在  这  个  年  纪  远  远  地  看  着  你","日  光  美  好  的  一  泻  千  里","温  暖  着  一  个  卑  微  而  简  单  的  心"} ,{"你  的  一  纸  信  笺","压  在  书  底","压  过  了  青  春  的  夏  季","从  爱  你  的  花  季","一  直  等  到","爱  你  的  暮  年"} 
} ;void init_screen(){COORD size = {100, 40};SetConsoleScreenBufferSize(o, size); // 重新设置缓冲区大小SMALL_RECT rc = {0, 0, 100-1, 40-1}; // 重置窗口位置和大小SetConsoleWindowInfo(o, true, &rc);SetConsoleTitle("LOVE");system("color ec"); // 设置为红色,显得浪漫温馨点
}void* show_love_word(void* arg){srand((unsigned)time(NULL));//随机每束花是否显示 while(true) {int word_index = rand()%5;int col = 70;int row_index = 3;if(word_index == 4)row_index = 6;//显示word int color_index = rand()%4; for(int i=0; i<row_index; ++i){int row = 1;for(int j=0; love_word[word_index][i][j]; j+=2){char one_word[2];//得到一个汉字 sprintf(one_word, "%c%c", love_word[word_index][i][j], love_word[word_index][i][j+1]);COORD coord = {col, row};pthread_mutex_lock(&mutex);SetConsoleTextAttribute(o, hjzgg_color[color_index]);SetConsoleCursorPosition(o, coord);WriteConsole(o, one_word, 2, NULL, 0);coord.Y += 1;if(love_word[word_index][i][j+2]){SetConsoleCursorPosition(o, coord);WriteConsole(o, "__", 2, NULL, 0);}SetConsoleTextAttribute(o, hjzgg_color[0]);pthread_mutex_unlock(&mutex);++row;Sleep(100);}col+=4;}Sleep(2000);//擦除Wordcol-=4;for(int i=row_index-1; i>=0; --i) {char hjzgg_word[60];memcpy(hjzgg_word, love_word[word_index][i], sizeof(love_word[word_index][i]));int len_hjzgg_word = strlen(hjzgg_word);int len_word = len_hjzgg_word;bool is_first = true;while(len_word >= 0) {int row = 1;for(int j=0; j<len_hjzgg_word; j+=2){char one_word[2];//得到一个汉字 sprintf(one_word, "%c%c", hjzgg_word[j], hjzgg_word[j+1]);COORD coord = {col, row};pthread_mutex_lock(&mutex);SetConsoleTextAttribute(o, hjzgg_color[color_index]);SetConsoleCursorPosition(o, coord);WriteConsole(o, one_word, 2, NULL, 0);coord.Y += 1;if(j+2 == len_word){SetConsoleCursorPosition(o, coord);WriteConsole(o, "__", 2, NULL, 0);++row;}SetConsoleTextAttribute(o, hjzgg_color[0]);pthread_mutex_unlock(&mutex);++row;}if(is_first){is_first = false;hjzgg_word[len_hjzgg_word++] = ' ';hjzgg_word[len_hjzgg_word++] = ' ';} else {len_hjzgg_word-=2;}hjzgg_word[--len_word] = ' ';hjzgg_word[--len_word] = ' ';Sleep(20);}col-=4;}Sleep(1000);}
}void* first_init_top(void* arg){char tmp[80];for(int ld=0; ld < 12; ++ld){COORD coord_top = { 0, ld};memset(tmp, ' ', sizeof(tmp));int cc = 0;while(cc < 60){while(buffer[ld][cc]==' ') ++cc;tmp[cc] = buffer[ld][cc];++cc;pthread_mutex_lock(&mutex);SetConsoleCursorPosition(o, coord_top);WriteConsole(o, tmp, 60, NULL, 0);pthread_mutex_unlock(&mutex);Sleep(15);}}
}void* screen_down_flower(void* arg){//从第26行开始打印 srand((unsigned)time(NULL));//随机每束花是否显示 int flower_row[3] = {11, 9, 11};int flower_col[3] = {20, 27, 20};int flower_begin_col[3] = {5, 33, 70};int flower_begin_row[3] = {26, 28, 26};struct timeval now;struct timespec outtime;pthread_mutex_lock(&mutex);while(true){int k = 0;while(k < 3){char flower[50][50] = {' '};int color_index = rand()%7;SetConsoleTextAttribute(o, hjzgg_color[color_index]);if(k==0 || k==2){for(int i=0; i<flower_row[k]; ++i)for(int j=0; j<flower_col[k]; ++j)flower[i][j] = flower1[i][j];} else {for(int i=0; i<flower_row[k]; ++i)for(int j=0; j<flower_col[k]; ++j)flower[i][j] = flower2[i][j];}for(int i=flower_begin_row[k], j=0; j<flower_row[k]; ++j, ++i){COORD coord = {flower_begin_col[k], i};SetConsoleCursorPosition(o, coord);WriteConsole(o, flower[j], flower_col[k], NULL, 0);}++k;SetConsoleTextAttribute(o, hjzgg_color[0]);//重新设置为原来的原色 gettimeofday(&now, NULL);outtime.tv_sec = now.tv_sec;outtime.tv_nsec = now.tv_usec * 100000;pthread_cond_timedwait(&cond, &mutex, &outtime);} }pthread_mutex_unlock(&mutex);
} void* first_init_down(void* arg){char tmp[80];for(int rd=24; 12 <= rd; --rd){COORD coord_down = { 0, rd };SetConsoleCursorPosition(o, coord_down);memset(tmp, ' ', sizeof(tmp));int cc = 60;while(cc >= 0){while(buffer[rd][cc]==' ') --cc;tmp[cc] = buffer[rd][cc];--cc;pthread_mutex_lock(&mutex);SetConsoleCursorPosition(o, coord_down);WriteConsole(o, tmp, 60, NULL, 0);pthread_mutex_unlock(&mutex);Sleep(15);}}
}
//一箭穿心图案
void show_piercing_arrow(){for(int i=0; i<9; ++i) {pthread_mutex_lock(&mutex);COORD coord_down = { 13, i+7 };SetConsoleCursorPosition(o, coord_down);WriteConsole(o, piercing_arrow[i], 33, NULL, 0);pthread_mutex_unlock(&mutex);}
}void first_init(){show_piercing_arrow();pthread_t tid[4];
//    screen_down_flowerpthread_create(&tid[2], NULL, screen_down_flower, NULL); 
//  show_love_wordpthread_create(&tid[3], NULL, show_love_word, NULL); 
//    心型 init_first pthread_mutex_init(&mutex, NULL);pthread_cond_init(&cond, NULL);pthread_create(&tid[0], NULL, first_init_top, NULL); pthread_create(&tid[1], NULL, first_init_down, NULL); pthread_join(tid[0], NULL);pthread_join(tid[1], NULL);
}int main() {init_screen();bool first = true;for (float t = 0.0f;; t += 0.1f) {int sy = 0;float s = sinf(t);float a = s * s * s * s * 0.2f;for (float z = 1.3f; z > -1.2f; z -= 0.1f) {_TCHAR* p = &buffer[sy++][0];float tz = z * (1.2f - a);for (float x = -1.5f; x < 1.5f; x += 0.05f) {float tx = x * (1.2f + a);float v = f(tx, 0.0f, tz);if (v <= 0.0f) {float y0 = h(tx, tz);float ny = 0.01f;float nx = h(tx + ny, tz) - y0;float nz = h(tx, tz + ny) - y0;float nd = 1.0f / sqrtf(nx * nx + ny * ny + nz * nz);float d = (nx + ny - nz) * nd * 0.5f + 0.5f;*p++ = ramp[(int)(d * 5.0f)];}else*p++ = ' ';}}if(first){first = false;first_init();}else {pthread_mutex_lock(&mutex);for (sy = 0; sy < 25; sy++) {COORD coord = { 0, sy };SetConsoleCursorPosition(o, coord);WriteConsole(o, buffer[sy], 60, NULL, 0);}pthread_mutex_unlock(&mutex);}Sleep(33);}return 0;
}

在这里插入图片描述


在这里插入图片描述

如果这篇文章对你的疑惑有所帮助,
不妨一键三连让我有更大动力继续出下一章。
谢谢。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.rhkb.cn/news/10505.html

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

520创意表白网站,让女友对你死心塌地。女神轻松领回家

可能很多女生都会觉得程序员都是直男&#xff0c;不懂浪漫。但是&#xff01;&#xff01;&#xff01;看完这个教程之后&#xff0c;让女友对你死心塌地。 这是一个基于js和html搭建的简单界面&#xff0c;你只需要把代码下载下来&#xff0c;然后再简单的改一下代码信息&…

HTML可用于情侣表白的爱心代码~,赶紧跟着操作,让她也拥有属于你的爱心吧。

文章目录 前言一、效果图二、操作步骤第一步第二步第三步第四步第五步第六步 源码 前言 最近随着电视剧《点燃我温暖你》的火热播出&#xff0c;剧中帅气学霸李洵的炫酷爱心代码也迅速火出了圈&#xff0c;爱心素材也异常火爆&#xff0c;我在这里整理了一份大家有需自取哦~ 可…

【七】springboot启动源码 - finishBeanFactoryInitialization

finishBeanFactoryInitialization 源码解析 Instantiate all remaining (non-lazy-init) singletons. 初始化剩下非懒加载的实例对象 finishBeanFactoryInitialization方法第918行&#xff0c;beanFactory.preInstantiateSingletons(); preInstantiateSingletons方法&#xff…

AI工程化实践-如何构造一个AI应用

最近大模型非常火爆&#xff0c;基于大模型的应用也层出不穷&#xff0c;比较火的比如AutoGPT&#xff0c;当然也有很多垂直领域的应用。那么如何基于大模型的能力快速的建设一个垂直领域的AI应用呢&#xff0c;这就涉及到了AI工程化建设。在整个AI工程化建设的过程中&#xff…

vue3的响应式赋值中数组array,对象object,集合set的重新赋值怎么操作,问过Chatgpt的答案

vue3和ts结合开发的时候&#xff0c;总是会遇到引用数据类型的重新赋值的情况&#xff0c;但是在vue3中&#xff0c;又不能使用直接赋值的情况&#xff0c;因为会改变proxy的结构&#xff0c;导致响应式失败&#xff0c;那么该如何重新赋值响应式对象数据成为了一个技巧问题&am…

使用gpt的感受,结尾附注册使用方式

最近一直很火的chatgpt&#xff0c;我也去试了一下&#xff0c;感觉还是用的很舒服的。 优点 感觉舒服的地方就是可以联系上下文&#xff0c;不像传统的搜索引擎一样&#xff0c;找不到的话得重新组织语言去搜索&#xff0c;可以跟gpt学习英语&#xff0c;问编程问题&#xf…

GIT使用的问题及解决

随时遇见&#xff0c;随机解决&#xff0c;同步记录 ~ 文章目录 ① git commit 失败&#xff1a;Author identity unknown *** Please tell me who you are.② git clone&#xff0c;git pull 提示 Permission denied&#xff0c;找不到私钥文件③ 重启电脑后&#xff0c;使用 …

解决Microsoft Bing 支持 ChatGPT后加入等待队列出错问题

解决Microsoft Bing 支持 ChatGPT后加入候补名单出错问题 代理进入https://www.bing.com/new&#xff0c;正确界面如下图&#xff1a; 如果进入直接跳转下图界面&#xff0c;则需要清除与bing相关的cookie&#xff08;设置里清除&#xff0c;这样就能之间跳转到加入候补名单的…

反射和动态代理

目录 v20230514更新 Userjava反射本质 反射的核心 获取Class对象&#xff1a; 创建对象&#xff1a; 调用方法&#xff1a; 访问字段&#xff1a; 需要注意的是&#xff0c; 综上所述&#xff0c; Userjava动态代理本质 两个核心的类&#xff1a;Proxy和InvocationH…

ChatGPT还在2G冲浪?新模型「youChat」:我已能够解说2022世界杯

视学算法报道 编辑&#xff1a;蛋酱、小舟 youChat 能成为搜索引擎变革的先行者吗&#xff1f; ChatGPT 自推出以来就被寄予厚望&#xff0c;一些人认为它会取代搜索引擎&#xff0c;成为「改变游戏规则的人」。 真的会有这一天吗&#xff1f;至少&#xff0c;一部分业内人士已…

流浪气球?ChatGPT这样回答,我惊了

近日&#xff0c;流浪地球电影反响热烈&#xff0c;“流浪气球”事件讨论热火&#xff0c;连人工智能ChatGPT都发表了 “自己”的看法&#xff0c;到底是怎么一回事呢&#xff1f;起因是我国一只民用气球&#xff0c;因技术和天气原因不小心飘到了米国上空&#xff0c;对方当时…

chatgpt赋能python:Python收发短信:简单可靠的解决方案

Python收发短信&#xff1a;简单可靠的解决方案 如果您需要向客户发送定期提醒或通知的短信&#xff0c;则 Python 是一种简单易用的解决方案。在本文中&#xff0c;我们将介绍如何使用 Python 发送和接收短信&#xff0c;并探讨一些流行的短信 API。 什么是短信 API&#xf…

chatgpt赋能python:Python编程——创新发短信新方式

Python编程——创新发短信新方式 在现代社会&#xff0c;短信是一种非常实用的通讯方式&#xff0c;广泛应用于各种场合。在Python编程领域中&#xff0c;通过利用各种API&#xff0c;我们能够创新地发短信并满足不同场景使用需求。本篇文章将介绍在Python编程中实现发短信的基…

chatgpt赋能python:Python短信发送:简单快捷的商业应用方式

Python短信发送&#xff1a;简单快捷的商业应用方式 介绍 随着科技的不断发展&#xff0c;短信已经成为商业沟通的重要渠道之一。许多业务场景需要使用短信进行客户沟通&#xff0c;例如短信验证码、促销短信、物流短信等等。 Python作为一种高效的编程语言&#xff0c;在短…

chatgpt赋能python:如何利用Python拦截短信验证码

如何利用Python拦截短信验证码 短信验证是现代互联网应用程序中最普遍的安全措施之一。然而&#xff0c;有些黑客试图入侵用户账户&#xff0c;通过拦截其短信验证码来获得访问权限。这可能会导致灾难性的后果&#xff0c;包括数据泄露和财务损失。 幸运的是&#xff0c;Pyth…

chatgpt赋能python:Python免费发短信:如何使用Python发送免费短信

Python免费发短信&#xff1a;如何使用Python发送免费短信 在现代社会中&#xff0c;短信已经成为人们生活中必不可少的一部分。大量的人们都使用短信来进行交流&#xff0c;包括商业交流和个人交流。如今&#xff0c;许多公司提供的短信服务费用比较高&#xff0c;这让许多用…

chatgpt赋能python:Python短信接口:如何实现高效、便捷的短信发送?

Python短信接口&#xff1a;如何实现高效、便捷的短信发送&#xff1f; 作为一项必不可少的应用&#xff0c;短信服务已成为商家与客户互动的重要手段。为此&#xff0c;短信接口成为实现短信服务的关键要素。Python作为一种优秀的编程语言&#xff0c;不仅具备高效、快速的处…

chatgpt赋能python:Python实现给手机发短信指南

Python实现给手机发短信指南 随着智能手机的普及&#xff0c;人们越来越习惯于通过短信和社交媒体来进行沟通。因此&#xff0c;发送短信已经成为了现代通讯的一部分。Python作为一种非常简单易用的编程语言&#xff0c;也可以用来发送短信。本篇文章将介绍如何使用Python在移…

chatgpt赋能python:如何使用Python发送短信

如何使用Python发送短信 短信是一种简单有效的沟通方式&#xff0c;特别是在紧急情况下。而Python作为一种著名的编程语言&#xff0c;提供了许多库来实现短信发送。在本文中&#xff0c;我们将介绍一些可用的Python库和如何使用它们发送短信。 Twilio Twilio是一个使用Pyth…

我用ChatGPT搞懂GPT技术原理,只问了30个问题,这是极致的学习体验!

自己前段时间写了一篇文章《问了ChatGPT 上百个问题后&#xff0c;我断定ChatGPT可以重塑学习范式&#xff01;》&#xff0c;讲了使用ChatGPT的感受&#xff0c;最近我开始学习GPT的技术原理&#xff0c;原因有三个&#xff1a; 1、工作中有可能要用到GPT&#xff0c;理解GPT的…