《自学是门手艺》读书笔记8

本篇内容较长,主要介绍值,值的类型、各类型值间操作符及值间的基础运算和复杂运算。此笔记只摘录主要文字说明内容,书籍原文中有对应的程序语句示例。

从结构上来看,一切的计算机程序,都由且只由两个最基本的成分构成:
运算(Evaluation)
流程控制(Control Flow)

在程序中,被运算的可分为常量(Literals)和变量(Variables)。

值是程序的基础成分(Building blocks),它就好像盖房子用的砖块一样,无论什么样的房子,到最后都主要是由砖块构成。

常量,当然有个值 —— 就是它们字面所表达的值。

变量必须先赋值才能使用,也就是说,要先把一个值保存到变量中,它才能在其后被运算。

值的类型

在编程语言中,总是包含最基本的三种数据类型:

布尔值(Boolean Value)
数字(Numbers):整数(Int)、浮点数(Float)、复数(Complex Numbers)
字符串(Strings)

既然有不同类型的数据,它们就分别对应着不同类型的值。

运算的一个默认法则就是,通常情况下应该是相同类型的值才能相互运算。

在不得不对不同类型的值进行运算之前,总是要事先做 Type Casting(类型转换)。比如,

将字符串转换为数字用 int()、float();

将数字转换成字符串用 str();

另外,即便是在数字之间进行计算的时候,有时也需要将整数转换成浮点数字,或者反之:

将整数转换成浮点数字用 float();

将浮点数字转换成整数用 int();

有个函数,type(),可以用来查看某个值属于什么类型:

针对不同类型的数据,有各自专用的操作符。

操作符

数值操作符
针对数字进行计算的操作符有加减乘除商余幂:+、-、*、/、//、%、**。

其中 + 和 - 可以对单个值进行操作,-3;其它的操作符需要有两个值才能操作。

从优先级来看,这些操作符中:

对两个值进行操作的 +、- 的优先级最低;

稍高的是 *、/、//、%;

更高的是对单个值进行操作的 +、-;

优先级最高的是 **。

布尔值操作符
针对布尔值,操作符有与、或、非:and、or、not。

它们之中,优先级最低的是或 or,然后是与 and, 优先级最高的是非 not:

逻辑操作符

数值之间还可以使用逻辑操作符,1 > 2 返回布尔值 False。逻辑操作符有:<(小于)、<=(小于等于)、>(大于)、>=(大于等于)、!=(不等于)、==(等于)。

逻辑操作符的优先级,高于布尔值的操作符,低于数值计算的操作符。 即:数值计算的操作符优先级最高,其次是逻辑操作符,布尔值的操作符优先级最低。

字符串操作符

针对字符串,有三种操作:
拼接:+ 和 ' '(后者是空格)
拷贝:*
逻辑运算:in、not in;以及,<、<=、>、>=、!=、==

字符之间,字符串之间,除了 == 和 != 之外,也都可以被逻辑操作符 <、<=、>、>= 运算:

这是因为字符对应着 Unicode 码,字符在被比较的时候,被比较的是对应的 Unicode 码。当字符串被比较的时候,将从两个字符串各自的第一个字符开始逐个比较,

列表操作符

列表的标示,用方括号 [];举例来说,[1, 2, 3, 4, 5] 和 ['ann', 'bob', 'cindy', 'dude', 'eric'],或者 ['a', 2, 'b', 32, 22, 12] 都是一个列表。

因为列表和字符串一样,都是有序容器(容器还有另外一种是无序容器),所以,它们可用的操作符其实相同:

拼接:+ 和 ' '(后者是空格)

拷贝:*

逻辑运算:in、not in;以及,<、<=、>、>=、!=、==

复杂运算

对于数字进行加、减、乘、除、商、余、幂的操作,对于字符串进行拼接、拷贝、属于的操作,对布尔值进行或、与、非的操作,这些都是相对简单的运算。

更为复杂一点的,我们要通过调用函数来完成 —— 因为在函数内部,我们可以用比 “单个表达式” 更为复杂的程序针对传递进来的参数进行运算。

笑来老师将庞杂的知识点按照实际学习进展优化配置,便于读者清晰理解,但更有效地掌握须要动手配置运行程序的相关插件。

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 214,172评论 6 493
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 91,346评论 3 389
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 159,788评论 0 349
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 57,299评论 1 288
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 66,409评论 6 386
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 50,467评论 1 292
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 39,476评论 3 412
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 38,262评论 0 269
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 44,699评论 1 307
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 36,994评论 2 328
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 39,167评论 1 343
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 34,827评论 4 337
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 40,499评论 3 322
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 31,149评论 0 21
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 32,387评论 1 267
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 47,028评论 2 365
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 44,055评论 2 352

推荐阅读更多精彩内容