往期传送门:文均:文科生Python教程(零)​zhuanlan.zhihu.com

(一)变量是什么?变量是个礼物盒!

在讲礼物盒之前,先帮张三解决他的问题。

在教程(零)中,张三想要统计《兰亭序》中“之”字的个数,我们现在来帮他用Python实现。

先看图,再解释:统计《兰亭序》中“之”字的个数

拢共分三步:

第二步,在左边的方框里粘贴以下代码:

# coding=utf-8

# 1. 输入数据

输入文本 = "永和九年,岁在癸丑,暮春之初,会于会稽山阴之兰亭,修禊事也。群贤毕至,少长咸集。此地有崇山峻岭,茂林修竹,又有清流激湍,映带左右,引以为流觞曲水,列坐其次。虽无丝竹管弦之盛,一觞一咏,亦足以畅叙幽情。是日也,天朗气清,惠风和畅。仰观宇宙之大,俯察品类之盛,所以游目骋怀,足以极视听之娱,信可乐也。夫人之相与,俯仰一世。或取诸怀抱,悟言一室之内;或因寄所托,放浪形骸之外。虽趣舍万殊,静躁不同,当其欣于所遇,暂得于己,快然自足,不知老之将至;及其所之既倦,情随事迁,感慨系之矣。向之所欣,俯仰之间,已为陈迹,犹不能不以之兴怀,况修短随化,终期于尽!古人云:“死生亦大矣。”岂不痛哉!每览昔人兴感之由,若合一契,未尝不临文嗟悼,不能喻之于怀。固知一死生为虚诞,齐彭殇为妄作。后之视今,亦犹今之视昔,悲夫!故列叙时人,录其所述,虽世殊事异,所以兴怀,其致一也。后之览者,亦将有感于斯文。"

# 2. 处理数据

之字个数 = 0

for 字符 in 输入文本:

if 字符 == "之":

之字个数 = 之字个数 + 1

# 3. 输出结果

print("之字个数为")

print(之字个数)

第三步,点击绿色的按钮:“点击运行”。

稍等片刻,右边的方框将输出“之”字的个数。

恭喜!你已经实现了人生中的第一个Python程序!

现在我们以逐行注疏的方式,来解释这份Python代码,并切入本篇正题:“变量是什么?变量是个礼物盒!”

第1行:# coding=utf-8

文均按:

尚书篇首常有固定句“曰若稽古”,佛经第一句都是“如是我闻”,同样的,Python代码的第一行也常有固定句,“# coding=utf-8”即是其中一种。至于它是何含义,我们暂且不表。

另外,在Python中,以井号 # 开始的句子都是注释,不会被电脑运行的,它是给注释给人看的。这就好比脂砚斋的批语,它不属于石头记的正文。看到井号,可以自动把它想成“眉批”或“侧批”,“脂砚斋云”,“畸笏叟云”之类。

第2行:空行。

文均按:空行可以让代码段落分明,看起来十分美观。

第3行:

# 1. 输入数据

文均按:这是一句批语,不会被电脑运行。

第4行:

输入文本 = "永和九年balabala"

文均按:

现在我们迎来了第一句真正的 Python 代码!在解释它之前,我们设想一个准备礼物的情景。

张三要给李四送生日礼物,他买了一块巧克力和一个礼物盒,礼物盒的名字叫 张盒,然后他把巧克力放进礼物盒中。

这种将礼物放入盒中的行为,我们将其简写为“礼物盒名 = 礼物”。譬如上例可以写成:

张盒 = "巧克力"

这句话从右往左读,等号念作“放入”,即为巧克力放入张盒。在电脑运行这句话之前,张盒里头是空的。在运行这句话之后,张盒里头就有了巧克力。

在编程界,我们将礼物盒称为变量,将礼物盒中的礼物称为变量的值,将礼物放入盒中的过程称为给变量赋值。

譬如上例,用人话是:有个一礼物盒,它的名字叫 张盒,它里面装的礼物是巧克力。

用编程的话就是:有一个变量,它的名字叫 张盒,它的值是巧克力。

好了,现在回到我们的第4行代码:

输入文本 = "永和九年balabala"

它的意思就是,有一个礼物盒(变量),它的名字(变量名)叫 输入文本,它里面装的礼物(变量的值)是兰亭序的内容。

在今后我们将一直使用变量或变量的值这些术语。

今天的内容先到这里,下篇我们继续。

扩展内容

讲到礼物盒,可以引申到佛教哲学。这里有三个概念,我们要分清:礼物盒,礼物盒的名字,礼物。礼物盒的本体是那个盒子本身,礼物盒的名字不过是人给这个本体的一个代号。而盒子里装的礼物,则是另外一个本体了。

当我们说盒子的代号时,一般指盒子本体,但在无歧义的情况下也可以指盒子里的东西。

后者在日常生活中甚至更常见。譬如,我是谁?我是一具躯壳,躯壳里面装着我的认知、我的记忆、我的思想、我的欲望。佛说空,说无我相,说破除我执,即是说要分清我这个代号、我这副躯壳、躯壳里装的自我认知这三者。我执即执着于躯壳里装着的这份自我认知。事实是,躯壳若在别的因缘下,会装进别的自我认知。我所执着的无非是这份因缘罢了,而因缘是无常的。空,就是认识到这份躯壳原本是空的,装进去的东西皆是因缘的结果。了悟到空与色之区别,便有了慧根。若再进一步,能了悟色即是空空即是色,便有了佛性。

所以人是什么?人就是一个变量。花一辈子为它赋值,即是人生。自主地赋值,即为自由意志。

《东坡志林》里有段话:近读六祖《坛经》,指说法、报、化三身,使人心开目明。然尚少一喻,试以眼喻:见是法身,能见是报身,所见是化身。何谓见是法身?眼之见性,非有非无,无眼之人,不免见黑,眼枯睛亡,见性不灭,故云见是法身。何谓能见是报身?见性虽存,眼根不具,则不能见,若能安养其根,不为物障,常使光明洞彻,见性乃全,故云能见是报身。何谓所见是化身?根性既全,一弹指顷,所见千万,纵横变化,俱是妙用,故云所见是化身。此喻既立,三身愈明。如此是否?

东坡解释得很妙:见是法身,能见是报身,所见是化身。其实也可以用礼物盒的例子解释:见是盒子,能见是盒子里的空间(空则能装礼物,不空则不能),所见就是盒中礼物。

文科生学python简书_文科生Python教程(一)相关推荐

  1. selenium python 简书_通过python+selenium3实现浏览器刷简书文章阅读量

    准备工作 下载python,本文以python3.6为例.python3.6下载地址:python3下载地址,选择合适的版本安装.安装成功后,打开命令提示符,在其中输入python,显示如下信息,则说 ...

  2. python中format函数用法简书_从Python安装到语法基础,这才是初学者都能懂的爬虫教程...

    Python和PyCharm的安装:学会Python和PyCharm的安装方法 变量和字符串:学会使用变量和字符串的基本用法 函数与控制语句:学会Python循环.判断语句.循环语句和函数的使用 Py ...

  3. 小甲鱼python课后题简书_【Python爬虫】-笨办法学 Python 习题01-10

    一.作业内容: 01.将下面的内容写到一个文件中,取名为ex1.py.这个命名方式很重要,Python文件最好以.py结尾. 1 print "Hello World!" 2 pr ...

  4. 电影推荐系统 python简书_分析9000部电影|一个简单的电影推荐系统

    不知道大家平时喜不喜欢看电影来消遣时光,我是比较喜欢看电影的.对我而言,当我看完一部电影,觉得很好看的时候,我就会寻找类似这部电影的其他电影.刚好有这么一个数据集,包含了很多部的电影,于是打算对其进行 ...

  5. 遗传算法 python 简书_遗传算法入门

    遗传算法简介: 遗传算法(Genetic algorithm)属于演化计算( evolutionary computing),是随着人工智能领域发展而来的一种智能算法.正如它的名字所示,遗传算法是受达 ...

  6. python运维脚本简书_通过python+selenium3实现浏览器刷简书文章阅读量

    准备工作 下载python,本文以python3.6为例.python3.6下载地址:python3下载地址,选择合适的版本安装.安装成功后,打开命令提示符,在其中输入python,显示如下信息,则说 ...

  7. 希尔排序python 简书_数据结构_排序_直接插入+希尔排序

    数据结构_排序_直接插入排序+希尔排序 其实主要是为了讲述希尔排序,不过插入排序是希尔排序的基础,因此先来讲直接插入排序. 一.直接插入排序 1.原理 下标 0 1 2 3 4 5 6 7 8 -- ...

  8. 遗传算法 python 简书_基于DEAP库的Python进化算法从入门到入土—(二)简单遗传算法实现...

    前言 在上一篇中,我们已经介绍了如何在DEAP中实现进化算法的基本操作,在这一篇中我们试图将各个操作组装起来,用进化算法解决一个简单的一元函数寻优问题. 进化算法实例 - 一元函数寻优 问题描述与分析 ...

  9. 电影推荐系统 python简书_【记录|Spark】简单的电影推荐系统

    为了学习spark,在实验楼上找到的一个spark入门课程,在此记录一下学习过程. 我使用的Spark版本为Spark 2.2.0, 实验楼教程使用的是Spark 1.6.1 流程和算法介绍 这个简单 ...

最新文章

  1. 少儿不宜!这个开源项目能自动画出各种尺寸的...
  2. mysql proxies_priv_Mysql5.7.18利用MySQLproxies_priv实现类似用户组管理实例分享
  3. 启动springboot报错Error creating bean with name 'dataSource' defined in class path resource
  4. POJ2155二维线段树
  5. skb详细解析【转】
  6. Linux系统文件I/O编程(一)---open()等基本函数
  7. 生产者、消费者问题之闹钟
  8. 201612-5 卡牌游戏
  9. extjs 中动态给gridpanel 复选框赋值
  10. 第七讲 虚拟机模板及大规模部署虚拟机
  11. (转)Spring Boot 日志配置(超详细)
  12. 两台计算机怎样共享一台打印机共享文件夹,两台电脑怎么共享文件和打印机
  13. Ubuntu搭建嵌入式开发(交叉编译)环境-转
  14. cgroup学习(二)——cgroup框架结构
  15. python-QQ空间扫码登录
  16. 计算机自动开机什么愿意,电脑自动开关机是什么原因 怎么解决呢
  17. 手游沙巴克传奇当前服务器维护,《沙巴克传奇》12月18日安卓、IOS维护公告
  18. 谷歌浏览器与IE浏览器不兼容问题
  19. uniapp+uniCloud实现批量上传图片到云端(解决h5端跨域问题)
  20. DS18B20读取温度

热门文章

  1. sql命令手册(转载)http://www.fanqiang.com
  2. 报警器——基于arduino
  3. 红米k30pro工程包工厂包
  4. 《UNP》随笔——“实现一个简单的回射服务器”存在的不足(信号处理)
  5. 国内一些黑客高手的联系方法
  6. 安利!王一博与海飞丝的清爽秘籍
  7. 转自随风飘荡自由飞翔 SQL技巧:快速把握一些异常精妙的SQL语句
  8. 事后诸葛亮-团队总结
  9. google机器学习速成教程学习笔记
  10. 使用Golang计算网络IP地址的CIDR