cz-sjm 发表于 2015-11-30 13:25:46

python基础教程学习笔记---(1)基础语法

  1、两个整数相除,计算结果的小数部分被截除,结果仍然是一个整数;
  如:1/2=0
  2、整数和浮点数相除、或者浮点数之间相除,结果有小数部分,仍然是一个浮点数;
  如:1/2.0=0.51.0/2=0.51.0/2.0=0.51/2.=0.5
  3、双斜线(//)定义整除运算
  如:1.0//2.0=0.01//2=0
  4、%定义取余运算(求模运算)
  如:10%3=12.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
  x,y通过两次输入接收用户输入的值,再参与后续的表达式运算
  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、接收输入的两种方式:input和raw_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的功能
字符串——文本



页: [1]
查看完整版本: python基础教程学习笔记---(1)基础语法