0基础语法
来自https://cscircles.cemc.uwaterloo.ca
(1)不同的类型转换会有不同的表现:
将浮点数转换成整数会使小数点后的信息丢失,例如int(1.234)会返还1,int(-34.7)会返还-34。
如果字符串的格式和整数不一样, 那么字符串转换成整数会造成错误。例如int(“1.234”)会造成错误。
如果字符串不是一个数,那么将其转换成浮点数会造成错误。例如float(“sandwich”)会造成错误。
(2)
(3)Python可以计算大部分能在科学计算器上找到的数学方程。
sqrt(x)计算x的算术平方根。
exp(x)和log(x)是指数方程和对数方程。
sin(x), cos(x), tan(x)等三角函数方程。
Pi 是指 3.1415。
当使用Python的三角函数方程时,x一定要使用弧度制,而不是角度制。
Python将这些大量的方程收入一个叫做模块的集合里。以上的方程属于math模块。
(4)变量作用域
事实上, 每当你调用一个函数,你无法改变任何在函数外定义的变量。给变量赋值的任何语言只影响一个调用函数中的“局部”变量,它只调用函数的一个“内部”变量。
如果一个不在局部作用域里的变量需要被评估,那么它会在全局作用域中寻找此变量。
(5)
同样,你可以使用string[x:y:2]来得到由第x, x+2, x+4, …位字符组成的子链,或用string [ y: x: -1]来获取string (where y>x)中的一部分颠倒的字符串。
有冒号的复合的代码块(if, for等)不能被用作内联块。比如,if 2>1: if 4>3: print()会导致句法错误。
[:]和range()的默认值
当使用子链运算符[:]时,你可以忽略开始或/和结尾(对于序列来说也是正确的,我们会在下一节课看到)。第一位索引的默认值是0(字符串的开始),最后一位索引的默认值是字符串的长度。同样,range(n)是range(0, n)的缩写。
(6)
(7)
(8)Python中的"深度"复制序列
序列作为参数
注意,因为序列本身运行的方式,任何将序列当作参数的函数都可以改变序列中的内容(在replace练习题中出现过)。