1、第一章 快速改造:基础知识1.2 交互式解释器在 IDLE 编辑器,在提示符后输入 help 然后按回车;也可以按下F1 获得有关 IDLE 的帮助信息1.4 数字和表达式1/2 返回 0,整除除法;1.0/2 返回 0.5,用一个或者多个包含小数点的数字参与计算。另外改变除法的执行方式:from_future_import division/可以实现整除,1.0/2.0 返回 0.0%取余数; *幂运算; 1/20 1.0/20.5 1.0/2.00.0 10%31 9*(1/2)1 9*(1.0/2)3.0 2.75%0.50.25 -9%43 -3%21 -3/2-21.4.1 长整数普
2、通整数不能大于 2147483647 也不能小于-2147483648,若更大的数,可以使用长整数。长整数结尾有个 L,理论上小写也可以,不过为了便于识别,尽可能用大写。1.4.2 十六进制和八进制0XAF 返回 175 ,十六进制;010 返回 8,八进制 0xAF175 01081.5 变量包含字母、数字和下划线。首字母不能是数字开头。1.8 函数Pow 计算乘方: pow(2,3) ,2*3 均返回 8;pow 等标准函数称为内建函数。Abs(-10)求绝对值,返回 10;round(1.0/2.0)返回 1.0,把浮点数四舍五入为最接近的整数值。 pow(2,3)8 2*38 abs(
3、-10)10 round(1.0/2.0)1.0 round(8.06,2)8.06 round(8.06,1)8.11.9 模块 import import math math.floor(8.8) 向下取整8.0 math.ceil(8.8)向上取整9.0 int(math.ceil(32.1)33 int(32.9)32 flo=math.floor flo(33.9)33.0使用了 from 模块 import 函数 ,这种方式的 import 命令之后,就可以直接使用函数,而不需要使用模块名最为前缀了。但是要注意在不同模块引用,可能导致函数冲突。 from math import s
4、qrt sqrt(9)3.01.9.1 cmath 和复数 nan-not a number 返回的结果Cmath 即 complex math 复数模块 import cmath cmath.sqrt(-1)1j 返回的 1j 是个虚数,虚数以 j 结尾;这里没有使用 from cmath import sqrt,避免与 math 的 sqrt 冲突。1.10.3 注释符号: #1.11 字符串,使用”可以进行转义。1.11.2 拼接字符串 Hello, WorldHello, World Hello, WorldHello,World Hello, +WorldHello, World H
5、ello, +5Traceback (most recent call last):File “, line 1, in Hello, +5TypeError: cannot concatenate str and int objects需要保证两边是一样的字符串,而有其他格式要报错的1.11.3 字符串表示 str 和 repr-两个均为函数,事实上 str 是一种类型Str 会将值转换为合理形式的字符串。另外一种是通过 repr 函数,创建一个字符串。Repr(x)也可以写作 x实现(注意:是反引号) ,python3.0 中已经不适用反引号了 print hello,worldhello
6、,world print repr(hello,world)hello,world print str(hello,world)hello,world print 1000L1000 1000L1000L print repr(1000L)1000L print str(1000L)1000 tmp=42 print The number is:+tmpTraceback (most recent call last):File “, line 1, in print The number is:+tmpTypeError: cannot concatenate str and int obj
7、ects print The number is:+tmpThe number is:42 print The number is:+str(tmp)The number is:42 print The number is:+repr(tmp)The number is:421.11.4 input 和 raw_input 的比较 name=input(“Whats your name:“)Whats your name:GumbyTraceback (most recent call last):File “, line 1, in name=input(“Whats your name:“
8、)File “, line 1, in NameError: name Gumby is not defined name=input(“Whats your name:“)Whats your name:Gumby后面输入的字符串增加了引号不报错。 input(Enter a number:)Enter a number:33 name=input(“Whats your name:“)Whats your name:Gumby raw_input(“Whats your name:“)Whats your name:GumbyGumby raw_input(“Whats your name
9、:“)Whats your name:GumbyGumby raw_input(Enter a number:)Enter a number:331.11.5 长字符串、原始字符串和 unicode(1)长字符串 使用三引号;转义的反斜杠用于行尾 print hello, world!hello, world! print hello,world!hello,world! 1+2+3+410(2)原始字符串,对于反斜线并不会特殊对待,以 r 开头,注意字符串尾部 print c:nowherec:owhere print r c:nowhereSyntaxError: invalid syntax print c:nowherec:owhere print rc:nowherec:nowhere print r“This is illegal“SyntaxError: EOL while scanning string literal print r“This is illegal“This is illegal print r“This is illegal“ “This is illegal