关于python函数是编程的信息( 二 )


在Python底层,True和False其实是1和0 ,所以如果我们执行以下操作,是不会报错的,但是在逻辑上毫无意义 。
我们用==判断相等的操作,可以看出来True==1, False == 0.
我们要小心Python当中的bool()这个函数,它并不是转成bool类型的意思 。如果我们执行这个函数 , 那么 只有0会被视作是False,其他所有数值都是True :
Python中用==判断相等,表示大于,=表示大于等于,表示小于,=表示小于等于 , !=表示不等 。
我们可以用and和or拼装各个逻辑运算:
注意not,and,or之间的优先级,其中notandor 。如果分不清楚的话,可以用括号强行改变运行顺序 。
关于list的判断,我们常用的判断有两种,一种是刚才介绍的==,还有一种是is 。我们有时候也会简单实用is来判断,那么这两者有什么区别呢?我们来看下面的例子:
Python是全引用的语言,其中的对象都使用引用来表示 。is判断的就是 两个引用是否指向同一个对象 ,而==则是判断两个引用指向的具体内容是否相等 。举个例子,如果我们把引用比喻成地址的话,is就是判断两个变量的是否指向同一个地址,比如说都是沿河东路XX号 。而==则是判断这两个地址的收件人是否都叫张三 。
显然,住在同一个地址的人一定都叫张三 , 但是住在不同地址的两个人也可以都叫张三,也可以叫不同的名字 。所以如果a is b , 那么a == b一定成立,反之则不然 。
Python当中对字符串的限制比较松,双引号和单引号都可以表示字符串,看个人喜好使用单引号或者是双引号 。我个人比较喜欢单引号 , 因为写起来方便 。
字符串也支持+操作,表示两个字符串相连 。除此之外,我们把两个字符串写在一起,即使没有+,Python也会为我们拼接:
我们可以使用[]来查找字符串当中某个位置的字符,用 len 来计算字符串的长度 。
我们可以在字符串前面 加上f表示格式操作,并且在格式操作当中也支持运算,比如可以嵌套上len函数等 。不过要注意,只有Python3.6以上的版本支持f操作 。
最后是None的判断,在Python当中None也是一个对象, 所有为None的变量都会指向这个对象。根据我们前面所说的,既然所有的None都指向同一个地址 , 我们需要判断一个变量是否是None的时候,可以使用is来进行判断,当然用==也是可以的,不过我们通常使用is 。
理解了None之后,我们再回到之前介绍过的bool()函数,它的用途其实就是判断值是否是空 。所有类型的 默认空值会被返回False,否则都是True 。比如0 , "",[], {}, ()等 。
除了上面这些值以外的所有值传入都会得到True 。
Python当中的标准输入输出是 input和print。
print会输出一个字符串,如果传入的不是字符串会自动调用__str__方法转成字符串进行输出 。默认输出会自动换行  , 如果想要以不同的字符结尾代替换行,可以传入end参数:
使用input时 , Python会在命令行接收一行字符串作为输入 。可以在input当中传入字符串,会被当成提示输出:
Python支持 三元表达式,但是语法和C++不同,使用if else结构,写成:
上段代码等价于:
Python中用[]表示空的list,我们也可以直接在其中填充元素进行初始化:
使用append和pop可以在list的末尾插入或者删除元素:
list可以通过[]加上下标访问指定位置的元素,如果是负数,则表示 倒序访问。-1表示最后一个元素,-2表示倒数第二个 , 以此类推 。如果访问的元素超过数组长度,则会出发 IndexError 的错误 。

推荐阅读