-
求绝对值的函数 abs,它接收一个参数。
调用函数的时候,如果传入的参数数量不对,会报TypeError的错误,并且Python会明确地告诉你:abs()有且仅有1个参数,但给出了两个:
如果传入的参数数量是对的,但参数类型不能被函数所接受,也会报TypeError的错误,并且给出错误信息:str是错误的参数类型:
而比较函数 cmp(x, y) 就需要两个参数,如果 x<y,返回 -1,如果 x==y,返回 0,如果 x>y,返回 1:
Python内置的常用函数还包括数据类型转换函数,比如 int()函数可以把其他数据类型转换为整数:
str()函数把其他类型转换成 str:
查看全部 -
Unicode通常用两个字节表示一个字符,原有的英文编码从单字节变成双字节,只需要把高字节全部填为0就可以。
查看全部 -
求绝对值的函数 abs,它接收一个参数。
查看全部 -
5-2 Python 之 if-else
当 if 语句判断表达式的结果为True时,就会执行 if 包含的代码块:
if age >= 18:
print 'adult'
如果我们想判断年龄在18岁以下时,打印出'teenager', 怎么办?
方法是在写一个 if:
if age < 18:
print 'teenager'
或者用not运算:
if not age >= 18:
print 'teenager'
这两种条件判断是“非此即彼”的,要么符合条件1,要么符合条件2,因此,完全可以用以一个 if。。else。。语句把他们统一起来:
if age >= 18:
print 'adult'
else:
print 'teenager'
利用 if。。。else。。。语句,我们可以根据条件表达式的值为True或者False,分别执行 if 代码块或者 else 代码块。
注意:else 后面有个“:”
查看全部 -
5-1 Python之if语言
计算机能做很多自动化的任务,因为它可以自己做条件判断。比如,输入用户年龄,根据年龄打印不同的内容,在Python程序中,可以用 if 语句来实现:
age = 20
if age >= 18:
print 'your age is'. age
print 'adult'
print 'END'
注意:Python代码的缩进规则,具有相同缩进的代码被视为代码块。上面的3,4行 print语句构成一个代码块 (但不包括第5行的print)。如果if语句判断为True,就会执行这个代码块。
缩进请严格按照Python的习惯写法:4个空格,不要使用Tab,更不要混合Tab和空格,否则很容易造成因为缩进引起的语法错误,
注意:if 语句后接表达式,然后用 : 表示代码块开始。
如果在Python交互环境下敲代码,还要特别留意缩进,并且推出缩进需要多敲一行回车:
>>> age = 20
>>> if age >= 18:
print 'your age is', age
print 'adult'
your age is 20
adult
查看全部 -
if语句中 缩进按照4个空格执行 Tab不能用作缩进
if后有相同的缩进量被称作代码块
if语句后要用:表示代码块开始
在Python交互环境退出缩进要多敲一行回车
查看全部 -
python dict是无序的,无法通过遍历按照一定的顺序输出结果
查看全部 -
在Python中,布尔类型还可以与其他数据类型做 and、or和not运算,请看下面的代码:
a = True print a and 'a=T' or 'a=F'
计算结果不是布尔类型,而是字符串 'a=T',这是为什么呢?
因为Python把
0
、空字符串''
和None
看成 False,其他数值和非空字符串都看成 True,所以:True and 'a=T' 计算结果是 'a=T' 继续计算 'a=T' or 'a=F' 计算结果还是 'a=T'
要解释上述结果,又涉及到 and 和 or 运算的一条重要法则:短路计算。
1. 在计算
a and b
时,如果 a 是 False,则根据与运算法则,整个结果必定为 False,因此返回 a;如果 a 是 True,则整个计算结果必定取决与 b,因此返回 b。2. 在计算
a or b
时,如果 a 是 True,则根据或运算法则,整个计算结果必定为 True,因此返回 a;如果 a 是 False,则整个计算结果必定取决于 b,因此返回 b。所以Python解释器在做布尔运算时,只要能提前确定计算结果,它就不会往后算了,直接返回结果。
查看全部 -
但是整数和浮点数混合运算的结果就变成浮点数了:
1 + 2.0 # ==> 浮点数 3.0
查看全部 -
当tupie表示单元素时元素后要加逗号t=(2,)
查看全部 -
如果中文字符串在Python环境下遇到 UnicodeDecodeError,这是因为.py文件保存的格式有问题。可以在第一行添加注释
# -*- coding: utf-8 -*-
目的是告诉Python解释器,用UTF-8编码读取源代码。然后用Notepad++ 另存为... 并选择UTF-8格式保存。
查看全部 -
想要替换某个元素就直接对某个元素赋值
eg为第一个元素赋值(替换)L[0]=XX
查看全部 -
删除单个元素用L.pop
1 L.pop()默认删除最后一个
2 当运行多次L.pop(X)时一定要注意 当运行第一次到第n次时X的排序是变动的
查看全部 -
遇到的错误
1 语法错误 python2 和python 3 如果出现
python:SyntaxError: invalid syntax
可能是括号问题
2 集合添加元素用小括号不要用中括号
3 关于空格键 在语法中好像没怎么要求
查看全部 -
整数和浮点数在计算机内部存储的方式是不同的,整数运算永远是精确的(除法难道也是精确的?是的!),而浮点数运算则可能会有四舍五入的误差。
查看全部
举报