初见Python<1>:基础语法

1、两个整数相除,计算结果的小数部分被截除,结果仍然是一个整数;

如:1/2=0

2、整数和浮点数相除、或者浮点数之间相除,结果有小数部分,仍然是一个浮点数;

如:1/2.0=0.5  1.0/2=0.5  1.0/2.0=0.5  1/2.=0.5

3、双斜线(//)定义整除运算

如:1.0//2.0=0.0  1//2=0

4%定义取余运算(求模运算)

如:10%3=1  2.75%0.5=0.25

5**定义幂运算(乘方运算)

如:2**3=8  -3**2=-9

6、输入16进制表达式会自动转化成十进制,输入8进制也同样会自动转化成十进制。以0x开头的为16进制,以0开头的为8进制

7、变量定义:变量名可以包括字母、数字和下划线(_),变量不能以数字开头

x=3是赋值表达式

8、在交互式解释器中,输入表达式和输入语句的结果是相同的。

如:print 2*2

和:2*2

结果都会打印4

但是在程序编写中不会这样,只有写语句才能完成打印输出。

表达式是某事,语句是做某事。

9、获取用户输入

使用input函数获取用户输入

>>>x=input("x:")

x:34

>>>y=input("y:")

y:42

>>>print x*y

1428

xy通过两次输入接收用户输入的值,再参与后续的表达式运算

10、几个函数

pow(a,b)=a**b-----乘方函数

abs(a)------绝对值函数

round(b)------把浮点数四舍五入为最接近的整数值

11、整除运算可以截取小数部分,只保留整数部分

round()函数可以四舍五入取整

使用math模块的floor函数可以实现向下取整,如:

>>>import math

>>>math.floor(32.9)

32.0

先使用import导入模块,然后按照“模块.函数”的格式使用这个模块的函数

floor相对的是ceil函数,可以向上取整为最小的整数

如果不想每次调用模块中的函数时都要使用“模块.函数”的格式,则可以使用另外一种形式:

>>>from math import floor

>>>floor(32.9)

32.0

通过“from模块import函数”后可以直接使用floor函数,而不再需要模块名前缀

12、使用sqrt()函数可以计算一个数的平方根,但是只能处理正数

对于负数,可以使用cmath模块(针对复数运算的模块)来实现开方功能

如:

>>>import cmath

>>>cmath.sqrt(-1)

1j

虚数以j或者J结尾,比如:

>>>(1+3j)*(9+4j)

(-3+31j)

使用这个函数时,最好不要使用“from模块import函数”这种形式,因为一旦使用,sqrt只能是cmath模块中的sqrt函数,而不能再使用math模块中的正常的sqrt函数,所以还是使用“模块.函数”格式。这样cmath模块和math模块中的sqrt()函数可以同时使用

13.py是脚本文件后缀名

windows系统中双击.py文件可以从cmd窗口打开Python文件,但是输入命令后或者不输入命令窗口都会立刻关闭,在文件最后加上

raw_input("press <enter>")

这一句可以让窗口不会关闭

14、使用单引号和双引号都可以来表示字符串,但是注意字符串自身含有的单引号和双引号,这时候要么分别使用双引号或者单引号,要么使用反斜杠作为转义字符,当然,也可以通过字符串拼接的方式完成输出

15、字符串拼接

>>>"hello,"+"world!"

'hello,world!'

>>>x='hello,'

>>>y='world!'

>>>x+y

'hello,world!'

16、使用print打印字符串

>>>print 'hello,world!'

hello,world!

对比可以看到,直接使用python打印的字符串是带有引号的,而使用print函数打印出来的结果是没有引号的

这是因为所有直接通过交互命令在python中打印的都保持了该值在python代码中的状态。又比如:

>>>10000L

10000L

>>>print 10000L

10000

这一点类似于两个字符串函数,即str()函数,repr()函数

>>>print repr('hello,world!')

'hello,world!'

>>>print repr(10000L)

10000L

>>>print str('hello,world!')

hello,world!

>>>print str(10000L)

10000

总结如下:str()repr()是将python值转化为字符串的2种方法,函数str()将字符串变得更易阅读,repr()则把结果字符串转换为合法的python表达式

17、接收输入的两种方式:inputraw_input

使用input接收输入时,用户必须输入合法的python表达式,即用单引号(双引号)括起来的字符串

否则就会报错。

而使用raw_input接收用户输入时,可以不用添加单引号或双引号来注明是字符串。raw_input在接收后会自动将其添加引号识别为字符串。

 因此,除非对input有特别的需要,否则应该尽可能的使用raw_input函数。

18、长字符串

如果需要写一个很长很长的字符串,并且需要跨多行,那么可以使用三个单引号或者三个双引号来替代普通引号

比如:

使用三个单引号(双引号)时,不用再担心内部字符串自身若包含单引号或双引号时造成的错误,也不需要再使用转义字符进行转义。

19、普通字符串也可以通过反斜杠来换行,这需要在一行的最后书写一个反斜杠。

这时候反斜杠只提示换行的意思,不会被打印出来。

20、原始字符串:

当字符串中包含有反斜杠时,会被认为是转义字符。如:

\n作为换行符,可以在字符串中任何需要换行的地方完成换行操作,\'是对'进行转义,表示'是字符串自身的一部分,而不是代表字符串的结束符

但是有时候我们需要输入反斜杠本身,比如一些目录路径

我们希望的输出应该是'c:\nDrivers'

但是python认为反斜杠是转义的作用。

解决办法有两种,一是再使用一个反斜杠,对反斜杠本身进行转义。如:

但是当字符串内部自身带的反斜杠很多时,就很麻烦。这时候使用第二种解决办法,即:使用原始字符串表示法。

原始字符串以r开头,可以在字符串中放入任何字符,唯一的要求是不允许最后一个字符是反斜杠。如果满足这唯一一点要求,就可以认为字符串中的任何字符都是字符串自身的一部分。

 

 21、Unicode字符串:

与字符串并不是同一数据类型,用u开头,比如:u'hello,world!'
python中普通字符串以8为ASCII码存储,但是unicode字符串则是以16为unicode字符存储。
在python3.0以上所有字符串都是Unicode字符串。
22、小结:
算法——是描述如何完成一项任务的方法
表达式——通过运算符和函数来构建的,其中也可以包含变量,用于表示值
变量——用于表示值
语句——告诉计算机做某些事情的指令
函数——可以带有参数,可以返回值
模块——扩展,将它导入到python中后从而扩展python的功能
字符串——文本
 
 
posted @ 2015-05-25 21:57  hbsygfz  阅读(633)  评论(0编辑  收藏  举报