ChatGPT国内镜像站初体验,聊天、Python代码生成。
-
Python 官网:https://www.python.org/
-
Free:大咖免费“圣经”教程《 python 完全自学教程》,不仅仅是基础那么简单……
自学并不是什么神秘的东西,一个人一辈子自学的时间总是比在学校学习的时间长,没有老师的时候总是比有老师的时候多。
—— 华罗庚
- My CSDN主页、My HOT博、My Python 学习个人备忘录
- 好文力荐、 老齐教室
本文质量分:
CSDN质量分查询入口:http://www.csdn.net/qc
- ◆ChatGPT
- 1、ChatGPT简介
- 1.1 ChatGPT国内镜像站AI对话头像已更换
- 2、关于闲聊
- 2.1 聊“情人节”
- 2.2 讨要“情人节”礼物🎁
- 2.3 “挑拨”ChatGPT
- 2.4 微信体验界面
- 3、关于Python代码生成
- 3.1 乘法九九表
- 3.2 杨辉三角
- 3.2.1 ChatGPT的两种算法
- 3.2.2 对称打印
- 3.2.3 奇妙的“[0]”算法
- 3.3 素数判定和查找
- 3.3.1 素数判定
- 3.3.2 素数查找
- 3.4 裴波拉契数列第n项
- 3.5 索要“车牌识别”系统
- 3.6 对“%”“编码错误”
- 4、写论文、写演讲稿?
- 5、ChatGPT国内镜像站
- 5.1 网页体验入口
- 5.2 微信体验入口
- 6、结语
- 7、ChatGPT的原理、Python调用GPT-3 API
- 8、完整源码
◆ChatGPT
最近ChatGPT传得沸沸扬扬,红得发紫。由于主站在国外,我没有资源和途径,无缘窥其尊容。最近有缘得到国内站点,趁着情人节的无所事事,来撩一把ChatGPT的国内镜像站点。
1、ChatGPT简介
ChatGPT is a natural language processing (NLP) chatbot that uses a generative pre-trained transformer (GPT) model to generate responses to user input. It is designed to provide a conversational experience that is as close to human-like as possible. ChatGPT is trained on a large corpus of conversational data and is able to generate responses that are both relevant and appropriate to the user’s input. ChatGPT can be used in a variety of applications, including customer service, virtual assistants, and more.
译文
ChatGPT目前会使用Python,JavaScript,HTML和CSS等编程语言。后续如有需要,还会学习其他语言。
1.1 ChatGPT国内镜像站AI对话头像已更换
ChatGPT国内镜像站,网页版、微信公众号版,AI对话头像已同步更换为“熊猫🐼头”,详见截屏图片(2023-02-16)。
网页版聊天对话界面
微信公众号版聊天对话界面
2、关于闲聊
- 网页版体验
2.1 聊“情人节”
趁这没有情人的情人节,与ChatGPT 唠唠“情人节”😋……
与ChatGPT聊天截屏图
2.2 讨要“情人节”礼物🎁
找ChatGPT要个“情人节”礼物🎁
与ChatGPT聊天截屏图
2.3 “挑拨”ChatGPT
“挑拨”ChatGPT ……
与ChatGPT聊天截屏图
从对ChatGPT的话语“挑逗”来看,它还是足够聪明的,对“无聊”的“我”,还是有一定治愈的。给我的感觉是——很不错!
2.4 微信体验界面
- 微信版体验,也一样“聪明”
3、关于Python代码生成
我只会点点Python基础,所以只能体验ChatGPT用Python代码来解决提问。
3.1 乘法九九表
对ChatGPT提问截屏图
代码
# ChatGPT 生成的“九九表”Python代码
for i in range(1, 10):for j in range(1, 10):print(i, 'x', j, '=', i*j)
输出
…
每一行都输出了1*i的积,给输出了9行×9列81个算式乘积,相当于两个九九表。
我想要的是这样子的“九九表”
我用“插值字符串格式”修改代码输出格式,可以输出上图九九表。也可以把代码揉合成列表解析,一行搞定。
常规代码写法
for i in range(1, 10):print() for j in range(1, i+1):print(f"{i}×{j}={i*j:>2}", end=' ')
一行代码解析“九九表”
nines = '\n'.join([' '.join(f"{i}×{j}={i*j:>2}" for j in range(1, i+1)) for i in range(1,10)])
input(f"\n打印一行Python代码生成的“九九表”:\n\n{nines}\n")
这是不是说明,ChatGPT智能的缺失?为探究,我修改了提问词句。
与ChatG提问截屏
代码
for i in range(1, 10):for j in range(1, i+1):print(f'{i}*{j}={i*j}', end='\t')print()
输出
与ChatGPT提问截屏图
代码
for i in range(1, 10):for j in range(1, i+1):print(f'{i}×{j}={i*j}', end='\t')print()
输出
改变提问词句,得到了不同的结果。未验证我的猜测,重新用最初的提问语句提问,但得到的却是显示优化后的代码。用最初的提问词句,多次提问,都是得到后面的代码。这是ChatGPT“自主学习”的结果?我不敢妄自猜度。从它“理解”让换*为×的快速执行,可以看出它对中文的理解已经相当“人类”了(它已经是人类小孩纸了😋)。
3.2 杨辉三角
3.2.1 ChatGPT的两种算法
与ChatGPT提问截屏图
代码
def yanghui_triangle(n):triangle = [[1]]for i in range(1, n):row = [1]for j in range(1, i):row.append(triangle[i-1][j-1] + triangle[i-1][j])row.append(1)triangle.append(row)for row in triangle:print(row)
yanghui_triangle(12)
与ChatGPT提问截屏图
代码
def yanghui_triangle(n):# 初始化列表triangle = []for i in range(n):# 每一行的列表row = [None for _ in range(i+1)]# 第一个和最后一个元素赋值为1row[0], row[-1] = 1, 1# 中间元素的值等于上一行的相邻元素之和for j in range(1, len(row)-1):row[j] = triangle[i-1][j-1] + triangle[i-1][j]triangle.append(row)return triangle# 打印杨辉三角
for row in yanghui_triangle(12):print(row)
两次不同的提问,获取了两种算法的代码。但明显的,ChatGPT还不可以“理解”中文“对称打印”。😋
3.2.2 对称打印
修改最后的输出格式,即可实现对称打印。
# 打印杨辉三角
for row in yanghui_triangle(12):#print(f"{' '.join([f'{i:^3}' for i in row]):^50}")#print(f"{' '.join(map(str, row)):^50}")print(f"{' '.join(map(lambda x: f'{x:^3}', row)):^50}")
如果用map()格式化row,直接用str函数,会对不齐整,打印出来是变形三角。😣正确方式是:要用匿名函数lambda自定义每排每个数字宽度。前12项最大是三位数字,就格式化每个数字占三个字符宽度lambda x: f'{i:^3}',打印出来的“杨辉三角”才可以齐整漂亮。😏
map(str, row)打印的变形杨辉三角
对称“杨辉三角”打印效果
3.2.3 奇妙的“[0]”算法
算法解析:
据“杨辉三角”结构特点,把“上一行”前后分别插入0,得到两个列表,分别把对应位置的整数相加就得到“下一行”。如:
代码
def yanghui_triangle(n):''' 打印杨辉三角前n行 '''late_row = [1] # 首行。for i in range(n): # 本该遍历n-1次,为了少一条print()多一次遍历。# 按定宽打印“上一行”。print(' '.join(map(lambda x: f'{x:^4}', late_row)).center(80)) # 多生成一行,始终打印上一行就好。next_row = [x+y for x,y in zip([0]+late_row, late_row+[0])] # 根据上行生成新行。late_row = next_row # 新行变“上一行”。n = 15
print(f"\n{f'“杨辉三角”前{n}行':~^74}\n")
yanghui_triangle(n)
print(f"\n{'':~^80}\n")
输出效果
此算法,我是从CSDN上学来的。😏
3.3 素数判定和查找
3.3.1 素数判定
与ChatGPT提问截屏图
代码
def is_prime(n):if n <= 1:return Falsefor i in range(2, n):#if n %!i(MISSING) == 0:if n % i == 0:return Falsereturn True
注:此行代码
if n %!i(MISSING) == 0:
ChatGPT间入了“!”、“(MISSING)”两个字符串,去除后才可以跑起来。
3.3.2 素数查找
与ChatGPT提问截屏图
代码
for num in range(2, 100):is_prime = Truefor i in range(2, num):#if num %!!(MISSING)i(MISSING) == 0:if num % i == 0:is_prime = Falsebreakif is_prime:print(num)
注:此行代码
if n %!!(MISSING)i(MISSING) == 0:
ChatGPT间入了“!”、“(MISSING)”两个字符串,去除后才可以跑起来。
我的代码
# 我的素数判定、查找代码def isprime(n):''' 素数判定 '''if n < 2:return # 1、0或者负数,不是素数。返回None。for i in range(2, n):if n%i == 0:return # 是合数,返回None。return n # 是素数,返回整数。def find_primes(n):''' 查找给定范围内的素数 '''return [i for i in range(n+1) if isprime(i)] # 列表解析给定范围的所有素数。if __name__ == '__main__':n = 1000print(f"\n{' '.join(map(str, find_primes(n)))}\n")
输出:1000内的素数列表
### 3.4 找出10000内所有完数
与ChatGPT提问截屏图
代码
for num in range(1, 10000):sum = 0for i in range(1, num):#if num %!i(MISSING) == 0:if num %i == 0:sum += iif sum == num:print(num)
注:此行代码
if n %!i(MISSING) == 0:
ChatGPT间入了“!”、“(MISSING)”两个字符串,去除后才可以跑起来。
这段儿代码,个人认为还可以优化:
1、真因子和的变量命名字符最好不应与Python关键字sum同款。
2、内层for遍历,当真因子和已大于外层遍历到的整数时,即已证明该整数不是完数,可以即刻退出内层for循环,继续遍历下一个整数。
for num in range(1, 10000):mysum = 0for i in range(1, num):#if num %!i(MISSING) == 0:if num %i == 0:mysum += iif mysum > num:breakif mysum == num:print(num)
3.4 裴波拉契数列第n项
与ChatGPT提问截屏图
代码一
def Fibonacci(n):if n == 0:return 0elif n == 1:return 1else:return Fibonacci(n-1) + Fibonacci(n-2)n = 9
print(Fibonacci(n))
代码二
def Fibonacci(n):if n == 1 or n == 2:return 1else:return Fibonacci(n-1) + Fibonacci(n-2)n = 9
for i in range(9):print(Fibonacci(n), end='')
这两段儿代码,无可挑剔,目前水准的我认为是完美无缺的。
3.5 索要“车牌识别”系统
与ChatGPT索要截屏图
ChatGPT不会给出整个项目代码,但会给出比较靠谱的建议。
3.6 对“%”“编码错误”
ChatGPT说这个情况,“可能是编码错误”。
向ChatGPT报错截屏图
Python代码语句中如果有“%”字符,总会多出“!”、“(MISSING)”。这一点一定要引起重视,不然是run不了ChatGPT给出的Python代码的。
ChatGPT说“可能是编码错误”,它会自主修复。经验证,并没有立即修正。
4、写论文、写演讲稿?
ChatGPT说好的“写论文”、“写演讲稿”哩?ChatGPT连作文都是不答应给写的,可以给出启发性的建议。个人感觉,这很好!😏
打死一遍“伸手党”!😄😄😄
与ChatGPT问答截屏图
Chat GPT标榜的“写作业”、“写论文”、“总统演讲稿”,是不是国外主站才可以哩?还是因为我英文文盲,没有整对“英文界面”的功能驾驭?🤪
5、ChatGPT国内镜像站
该站点目前没有设置限制,可以任意使用。
5.1 网页体验入口
-
点击链接跳转或复制地址到浏览器:https://aigcfun.com
-
网页体验首页
5.2 微信体验入口
- 微信体验入口
微信入口二维码图片
我的级别不够,CSDN不给我贴二维码的权限。我把二维码放网盘了,您可以复制下面的字符到“百度网盘”获取(永久有效)。
由于访问量过大,微信已暂停扫码登入。您可在微信添加好友页面搜索“吴枫和他的朋友”微信公众号,关注后,直接在公众号聊天对话框中输入字符,就可以和ChatGPT交流了。
- 微信体验界面
6、结语
通过国内镜像站对ChatGPT的体验,感觉到了“人工智能AI”的强大!至少ChatGPT已经强大的一塌糊涂了。💪
对ChatGPT的合理利用,会让人如虎添翼,极大的加快工作、学习的效率。
ChatGPT不会给出一个完整的项目,但却可以智能的给出极具建设性的一些建议。
我认为,有这些,就已足够好的了。
7、ChatGPT的原理、Python调用GPT-3 API
- ChatGPT的原理:机器人背后的模型
- 用 Python 调用 GPT-3 API
通过阅读齐老师的这两篇文章,可以对ChatGPT有更深层次的了解,方便工作学习中把ChatGPT使用得“得心应手”。
技术文章出自老齐教室,作者老齐。
8、完整源码
(源码较长,点此跳过源码)
#!/sur/bin/nve python
# coding: utf-8s = '可以使用以下Python代码判定素数:'
print(s)def is_prime(n):#if n <= 1:if n < 2:return Falsefor i in range(2, n):#if n %!i(MISSING) == 0:if n % i == 0:return Falsereturn Truen = 97
print(f"\n{n}是素数:{is_prime(n)}")
n = -97
print(f"\n{n}是素数:{is_prime(n)}")
n = 33
print(f"\n{n}是素数:{is_prime(n)}\n")input()s = '可以使用以下Python代码打印100以内的质数列表:'
print(s)for num in range(2, 100):is_prime = Truefor i in range(2, num):#if num %!!(MISSING)i(MISSING) == 0:if num % i == 0:is_prime = Falsebreakif is_prime:print(num, end=' ')print()# 我的素数判定、查找代码def isprime(n):''' 素数判定 '''if n < 2:return # 1、0或者负数,不是素数。返回None。for i in range(2, n):if n%i == 0:return # 是合数,返回None。return n # 是素数,返回整数。def find_primes(n):''' 查找给定范围内的素数 '''return [i for i in range(n+1) if isprime(i)]if __name__ == '__main__':n = 1000print(f"\n{' '.join(map(str, find_primes(n)))}\n")input() s = '''您可以对称打印“杨辉三角”前12项么?对称打印!以下是用Python实现杨辉三角的代码:'''
print('杨辉三角'.center(46, '~'))
print(s)def yanghui_triangle(n):# 初始化列表triangle = []for i in range(n):# 每一行的列表row = [None for _ in range(i+1)]# 第一个和最后一个元素赋值为1row[0], row[-1] = 1, 1# 中间元素的值等于上一行的相邻元素之和for j in range(1, len(row)-1):row[j] = triangle[i-1][j-1] + triangle[i-1][j]triangle.append(row)return triangle# 打印杨辉三角
for row in yanghui_triangle(12):# 下面两种写法都可以实现对称打印杨辉三角。#print(f"{' '.join([f'{i:^3}' for i in row]):^50}")#print(f"{' '.join(map(str, row)):^50}")print(f"{' '.join(map(lambda x: f'{x:^3}', row)):^50}") # 要用匿名函数lambda自定义每排每个数字宽度。s = '\n可以使用以下Python代码打印“杨辉三角”前12项:'
print(s)def yanghui_triangle(n):triangle = [[1]]for i in range(1, n):row = [1]for j in range(1, i):row.append(triangle[i-1][j-1] + triangle[i-1][j])row.append(1)triangle.append(row)for row in triangle:print(row)
yanghui_triangle(12)def yanghui_triangle(n):''' 打印杨辉三角前n行 '''late_row = [1] # 首行。for i in range(n): # 本该遍历n-1次,为了少一条print()多一次遍历。# 按定宽打印“上一行”。print(' '.join(map(lambda x: f'{x:^4}', late_row)).center(80)) # 多生成一行,始终打印上一行就好。next_row = [x+y for x,y in zip([0]+late_row, late_row+[0])] # 根据上行生成新行。late_row = next_row # 新行变“上一行”。n = 15
print(f"\n{f'“杨辉三角”前{n}行':~^74}\n")
yanghui_triangle(n)
print(f"\n{'':~^80}\n")input() s = '九九表'
print(s)
# 1*1 = 1
for i in range(1, 10):for j in range(1, i+1):print(f'{i}*{j}={i*j}', end='\t')print()
# 1×1 = 1
for i in range(1, 10):for j in range(1, i+1):print(f'{i}×{j}={i*j}', end='\t')print()# ChatGPT 生成的“九九表”Python代码
for i in range(1, 10):for j in range(1, 10):print(i, 'x', j, '=', i*j)input('\n【ChatGPT生成的“九九表”Python代码,输出效果】')nines = '\n'.join([' '.join(f"{i}×{j}={i*j:>2}" for j in range(1, i+1)) for i in range(1,10)])
input(f"\n打印一行Python代码生成的“九九表”:\n\n{nines}\n")for i in range(1, 10):print() for j in range(1, i+1):print(f"{i}×{j}={i*j:>2}", end=' ')input() s = '可以使用以下Python代码找出10000内的完数:'
print(s)for num in range(1, 10000):sum = 0for i in range(1, num):#if num %!i(MISSING) == 0:if num %i == 0:sum += iif sum == num:print(num)# 算法优化代码
for num in range(1, 10000):mysum = 0for i in range(1, num):#if num %!i(MISSING) == 0:if num %i == 0:mysum += iif mysum > num:breakif mysum == num:print(num)input()s = '裴波拉契数列是一个数学序列,它的每一项都是前两项的和,即F(n)=F(n-1)+F(n-2),其中F(1)=F(2)=1。可以使用以下Python代码求出第n项:'
print(s)def Fibonacci(n):if n == 1 or n == 2:return 1else:return Fibonacci(n-1) + Fibonacci(n-2)n = 9
for i in range(9):print(Fibonacci(n), end='')s = '可以使用以下Python代码来求裴波拉契数列第n项:'
print(s)def Fibonacci(n):if n == 0:return 0elif n == 1:return 1else:return Fibonacci(n-1) + Fibonacci(n-2)n = 9
print(Fibonacci(n))input() s = '可以使用以下Python代码来判定素数:'
print(s)def is_prime(n):if n <= 1:return Falsefor i in range(2, n):#if n %!i(MISSING) == 0:if n % i == 0:return Falsereturn Truen = 88
print(f"\n{n}是素数:{is_prime(n)}\n")input()
__上一篇:__ 求解最大公约数(常用的四大算法求解最大公约数,分解质因数法、短除法、辗转相除法、更相减损法)
__下一篇:__
我的HOT博:
- New:ChatGPT初体验(ChatGPT国内镜像站初体验,聊天、Python代码生成。)CSDN质量分92。(3801阅读)
- 彩色文字界面尼姆游戏(1001阅读)
- 神奇的 \033 ,让打印出彩(1118阅读)
- 小炼二维数组(1174阅读)
- 仿真模拟福彩双色球(1954阅读)
- Python之魔幻切片(1263阅读)
- 数列求和a, aa, aaa, ..., aa...aa(n个a)(1326阅读)
- 个人信息提取(2027阅读)
- 十六进制字符串转Python代码(utf-8字符串转十六进制字符串)(1244阅读)
- 生成100个随机正整数(1917阅读)
- 给定字符串提取姓名(字符串、list、re“零宽断言”)(1350阅读)
- 我的 Python.color() (Python 色彩打印控制)(1777阅读)
- python清屏(2908阅读)
- 回车符、换行符和回车换行符(2961阅读)
- Linux 脚本文件第一行的特殊注释符(井号和感叹号组合)的含义(1692阅读)
- random.sample()将在python 3.9x后续版本中被弃用(1594阅读)
- pandas 数据类型之 Series(1674阅读)
- 聊天消息敏感词屏蔽系统(字符串替换 str.replace(str1, *) )(1747阅读)
- 练习:银行复利计算(用 for 循环解一道初中小题)(1580阅读)
- pandas 数据类型之 DataFrame(5061阅读)
- 班里有人和我同生日难吗?(蒙特卡洛随机模拟法)(2355阅读)
- Python 续行符(\)“拯救”你的超长语句(1308阅读)
- Python字符串居中显示(4096阅读)
- 练习:求偶数和、阈值分割和求差( list 对象的两个基础小题)(1738阅读)
- 用 pandas 解一道小题(2150阅读)
- 可迭代对象和四个函数(1171阅读)
- “快乐数”判断(1355阅读)
- 罗马数字转换器(构造元素取模)(2604阅读)
- Hot:罗马数字(转换器|罗生成器)(5576阅读)
- Hot:让QQ群昵称色变的代码(48847阅读)
- Hot:斐波那契数列(递归| for )(4166阅读)
- 柱状图中最大矩形(1764阅读)
- 排序数组元素的重复起止(1369阅读)
- 电话拨号键盘字母组合(1579阅读)
- 密码强度检测器(2524阅读)
- 求列表平衡点(1965阅读)
- Hot: 字符串统计(4426阅读)
- Hot:尼姆游戏(聪明版首发)(3684阅读)
- 尼姆游戏(优化版)(1375阅读)
推荐条件点阅破千
回页首
精品文章:
- 好文力荐:齐伟书稿 《python 完全自学教程》 Free连载(已完稿并集结成书,还有PDF版本百度网盘永久分享,点击跳转免费🆓下载。)
- OPP三大特性:封装中的property
- 通过内置对象理解python'
- 正则表达式
- python中“*”的作用
- Python 完全自学手册
- 海象运算符
- Python中的 `!=`与`is not`不同
- 学习编程的正确方法
来源:老齐教室
回页首
◆ Python 入门指南【Python 3.6.3】
好文力荐:
-
全栈领域优质创作者——寒佬(还是国内某高校学生)博文“非技术文—关于英语和如何正确的提问”,“英语”和“会提问”是学习的两大利器。
-
【8大编程语言的适用领域】先别着急选语言学编程,先看它们能干嘛
-
靠谱程序员的好习惯
CSDN实用技巧博文:
- 8个好用到爆的Python实用技巧
- python忽略警告
- Python代码编写规范
- Python的docstring规范(说明文档的规范写法)
本文链接:https://my.lmcjl.com/post/8105.html
4 评论