热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

python里能不能用中文

现代计算机和编程的起源和推动力量主要源自美国,再加上26个字母很便于表示(算上大小写,6位bit就够了),因此

现代计算机和编程的起源和推动力量主要源自美国,再加上26个字母很便于表示(算上大小写,6位bit就够了),因此英语一直是编程领域的不二之选。但这就给部分非英语国家的编程学习者带来一些困扰。以至于有些人还没开始学,就担心自己的英语问题。这完全没必要,因为编程初期所用到的单词很有限,你就当做一个符号去记,也能很快熟悉。而且我们一直在讲的 Python,也可以“用中文”来编程

Python3 对于字符编码这一块做了很大改进。带来的一个额外功能就是,你可以使用中文作为变量名。比如:

>>> 名字 = '张三'
>>> 年龄 = 18
>>> print(名字, 年龄)
张三 18

注意,Python2 是不行的。另外如果在代码里写中文,别忘了在开头加上 #coding: gbk#coding: utf8 的声明。关于版本 2 和 3 的差别之前的文章里有多次说过,不太清楚的同学请在公众号里回复关键字 2v3

上面这样的写法完全是符合语法的,但我个人没有习惯这么来命名。不过非要这么来的,我们可以尝试把教程里的“猜数字”代码改一下(原版代码见教程 22 课):

from random import randint
def 是否相等(参数1, 参数2):if 参数1 < 参数2:print(&#39;太小了&#39;)return False;if 参数1 > 参数2:print(&#39;太大了&#39;)return False;if 参数1 &#61;&#61; 参数2:print(&#39;猜中了&#xff01;&#39;)return True答案 &#61; randint(1, 100)
print(&#39;猜猜我想的是几?&#39;)
是否猜中 &#61; False
while 是否猜中 &#61;&#61; False:猜测值 &#61; int(input())是否猜中 &#61; 是否相等(猜测值, 答案)

使用中文变量名&#xff0c;执行效果和原版完全一致&#xff08;除非代码的编码出了问题&#xff09;。更进一步&#xff0c;你还可以通过某些方式更改系统提供的函数名&#xff1a;

from random import randint as 随机整数输入 &#61; input输出 &#61; print
&#61; True
&#61; False
整数 &#61; int
def 是否相等(参数1, 参数2):if 参数1 < 参数2:输出(&#39;太小了&#39;)return ;if 参数1 > 参数2:输出(&#39;太大了&#39;)return ;if 参数1 &#61;&#61; 参数2:输出(&#39;猜中了&#xff01;&#39;)return 答案 &#61; 随机整数(1, 100)
输出(&#39;猜猜我想的是几?&#39;)
是否猜中 &#61;
while 是否猜中 &#61;&#61; :猜测值 &#61; 整数(输入())是否猜中 &#61; 是否相等(猜测值, 答案)

这里牵涉到3个概念&#xff1a;

  1. from random import randint as 随机整数 是引入模块时指定别名
  2. 对 &#61; True&#xff0c;就是一个普通的变量赋值
  3. 输入 &#61; input整数 &#61; int&#xff0c;要理解这个用法&#xff0c;你需要有面向对象的认识&#xff1a;在 Python 中函数也是一种对象&#xff0c;可以像普通值一样赋值给变量。赋值之后&#xff0c;这个变量就相当于这个函数&#xff0c;可以通过括号语法来调用。

如果你还嫌不够彻底&#xff0c;有人给了更凶残的解决方案&#xff1a;一个叫做“周蟒”的项目&#xff0c;相当于把 Python 翻译成了中文。&#xff08;不过项目很久没更新了&#xff0c;我在 py3 上安装未成功&#xff09;

在 py2 上通过 pip 即可安装&#xff1a;

pip install zhpy

之后就能通过 zhpy 进入交互环境&#xff0c;或者直接 zhpy test.py 执行你的中文 py 代码文件。

写出来代码是酱婶儿的&#xff1a;

random 导入 randint 作为 随机整数定义 是否相等(参数1, 参数2):如果 参数1 < 参数2:打印 &#39;太小了&#39;返回 如果 参数1 > 参数2:打印 &#39;太大了&#39;返回 如果 参数1 &#61;&#61; 参数2:打印 &#39;猜中了&#xff01;&#39;返回 答案 &#61; 随机整数(1, 100)打印 &#39;猜猜我想的是几?&#39;
是否猜中 &#61;
是否猜中 &#61;&#61; :猜测值 &#61; 整数(输入())是否猜中 &#61; 是否相等(猜测值, 答案)

几乎帮你把所有基础语法都转成了中文&#xff0c;甚至还可以用 emoji 表情……之前有同学对猜数字代码的理解还有疑惑&#xff0c;尤其是 bingo 这个变量&#xff0c;那如果写成这样&#xff0c;是不是更容易理解一点呢&#xff1f;

除此之外&#xff0c;还有不少中文编程语言&#xff0c;其中最出名的莫过于“易语言”。虽然科班出身的程序员都不太看得上这种语言&#xff0c;但不得不承认&#xff0c;它在我国的草根黑客圈中有着广泛的群众基础。

另外&#xff0c;我还发现了一个有趣语言&#xff0c;叫 PerlYuYan。看名字就知道是基于 Perl&#xff0c;但让你想不到的是&#xff0c;它将 Perl 翻译成了文言文……比如官方示例里的代码&#xff1a;

用警兮用嚴。印道
一至一
哉兮印編曰雜申雜申矣
又纖曰龍鼠矣又曰一矣亂曰
國無人莫我知兮 又何懷乎故都
既莫足與為美政兮 吾將從彭咸之所居資曰
印重一至一兮
重起一至十合始印終


是不是感到不明觉厉&#xff01;但实际上也就是字面上的翻译。比如 用警兮用嚴。&#xff0c;其实就是use warnings; use strict;。那么曰龍鼠矣&#xff0c;龙鼠又是什么鬼&#xff1f;根据下图自行体会吧&#xff08;欢迎评论区抢答&#xff09;&#xff1a;

看了这些中文写出的代码&#xff0c;你现在有啥想法&#xff1f;觉得太酷炫了&#xff0c;还是视作异端&#xff1f;

最后还是说句&#xff0c;尽管可以用中文写代码&#xff0c;尽管有大量的中文资料、教程、文档&#xff0c;就算你自己也接受使用中文来学习编程甚至写代码&#xff0c;我还是强烈建议你尽量提升下英文&#xff0c;逼着自己去看报错、看原版文档、看 StackOverflow 上的问答&#xff0c;哪怕一开始你用翻译工具慢慢查。英语能力虽然对你编程起步的下限影响不大&#xff0c;但对你编程发展的上限至关重要。和学编程一样&#xff0c;这是个长期的过程&#xff0c;坚持下去总会有提升的。

之前我们还做过一个整理编程英语高频词汇的小项目&#xff0c;有需要的可以拿去参考&#xff1a;《我们用程序整理出了一份Python英语高频词汇表&#xff0c;拿走不谢&#xff01;》&#xff0c;希望对你有所帮助。


════

其他文章及回答&#xff1a;

如何自学Python | 新手引导 | 精选Python问答 | Python单词表 | 人工智能 | 爬虫 | 我用Python | requests | 计算机视觉 | 字符播放器 | 一图学Python

欢迎搜索及关注公众号&#xff1a;Crossin的编程教室



推荐阅读
  • sklearn数据集库中的常用数据集类型介绍
    本文介绍了sklearn数据集库中常用的数据集类型,包括玩具数据集和样本生成器。其中详细介绍了波士顿房价数据集,包含了波士顿506处房屋的13种不同特征以及房屋价格,适用于回归任务。 ... [详细]
  • 2018年人工智能大数据的爆发,学Java还是Python?
    本文介绍了2018年人工智能大数据的爆发以及学习Java和Python的相关知识。在人工智能和大数据时代,Java和Python这两门编程语言都很优秀且火爆。选择学习哪门语言要根据个人兴趣爱好来决定。Python是一门拥有简洁语法的高级编程语言,容易上手。其特色之一是强制使用空白符作为语句缩进,使得新手可以快速上手。目前,Python在人工智能领域有着广泛的应用。如果对Java、Python或大数据感兴趣,欢迎加入qq群458345782。 ... [详细]
  • Python已成为全球最受欢迎的编程语言之一,然而Python程序的安全运行存在一定的风险。本文介绍了Python程序安全运行需要满足的三个条件,即系统路径上的每个条目都处于安全的位置、"主脚本"所在的目录始终位于系统路径中、若python命令使用-c和-m选项,调用程序的目录也必须是安全的。同时,文章还提出了一些预防措施,如避免将下载文件夹作为当前工作目录、使用pip所在路径而不是直接使用python命令等。对于初学Python的读者来说,这些内容将有所帮助。 ... [详细]
  • 微软头条实习生分享深度学习自学指南
    本文介绍了一位微软头条实习生自学深度学习的经验分享,包括学习资源推荐、重要基础知识的学习要点等。作者强调了学好Python和数学基础的重要性,并提供了一些建议。 ... [详细]
  • 生成式对抗网络模型综述摘要生成式对抗网络模型(GAN)是基于深度学习的一种强大的生成模型,可以应用于计算机视觉、自然语言处理、半监督学习等重要领域。生成式对抗网络 ... [详细]
  • 本文介绍了设计师伊振华受邀参与沈阳市智慧城市运行管理中心项目的整体设计,并以数字赋能和创新驱动高质量发展的理念,建设了集成、智慧、高效的一体化城市综合管理平台,促进了城市的数字化转型。该中心被称为当代城市的智能心脏,为沈阳市的智慧城市建设做出了重要贡献。 ... [详细]
  • Python字典推导式及循环列表生成字典方法
    本文介绍了Python中使用字典推导式和循环列表生成字典的方法,包括通过循环列表生成相应的字典,并给出了执行结果。详细讲解了代码实现过程。 ... [详细]
  • CSS3选择器的使用方法详解,提高Web开发效率和精准度
    本文详细介绍了CSS3新增的选择器方法,包括属性选择器的使用。通过CSS3选择器,可以提高Web开发的效率和精准度,使得查找元素更加方便和快捷。同时,本文还对属性选择器的各种用法进行了详细解释,并给出了相应的代码示例。通过学习本文,读者可以更好地掌握CSS3选择器的使用方法,提升自己的Web开发能力。 ... [详细]
  • “你永远都不知道明天和‘公司的意外’哪个先来。”疫情期间,这是我们最战战兢兢的心情。但是显然,有些人体会不了。这份行业数据,让笔者“柠檬” ... [详细]
  • 本文介绍了Python版Protobuf的安装和使用方法,包括版本选择、编译配置、示例代码等内容。通过学习本教程,您将了解如何在Python中使用Protobuf进行数据序列化和反序列化操作,以及相关的注意事项和技巧。 ... [详细]
  • 拥抱Android Design Support Library新变化(导航视图、悬浮ActionBar)
    转载请注明明桑AndroidAndroid5.0Loollipop作为Android最重要的版本之一,为我们带来了全新的界面风格和设计语言。看起来很受欢迎࿰ ... [详细]
  • Go GUIlxn/walk 学习3.菜单栏和工具栏的具体实现
    本文介绍了使用Go语言的GUI库lxn/walk实现菜单栏和工具栏的具体方法,包括消息窗口的产生、文件放置动作响应和提示框的应用。部分代码来自上一篇博客和lxn/walk官方示例。文章提供了学习GUI开发的实际案例和代码示例。 ... [详细]
  • Imtryingtofigureoutawaytogeneratetorrentfilesfromabucket,usingtheAWSSDKforGo.我正 ... [详细]
  • EzPP 0.2发布,新增YAML布局渲染功能
    EzPP发布了0.2.1版本,新增了YAML布局渲染功能,可以将YAML文件渲染为图片,并且可以复用YAML作为模版,通过传递不同参数生成不同的图片。这个功能可以用于绘制Logo、封面或其他图片,让用户不需要安装或卸载Photoshop。文章还提供了一个入门例子,介绍了使用ezpp的基本渲染方法,以及如何使用canvas、text类元素、自定义字体等。 ... [详细]
  • ShiftLeft:将静态防护与运行时防护结合的持续性安全防护解决方案
    ShiftLeft公司是一家致力于将应用的静态防护和运行时防护与应用开发自动化工作流相结合以提升软件开发生命周期中的安全性的公司。传统的安全防护方式存在误报率高、人工成本高、耗时长等问题,而ShiftLeft提供的持续性安全防护解决方案能够解决这些问题。通过将下一代静态代码分析与应用开发自动化工作流中涉及的安全工具相结合,ShiftLeft帮助企业实现DevSecOps的安全部分,提供高效、准确的安全能力。 ... [详细]
author-avatar
等艺来绵阳
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有