Python基础篇-基础知识

2016-08-30 · 🙈Ray · 0条 · 311次

一.数字和表达式

Python中利用双斜线(//)实现整除,不管是整数还是浮点数都是如此。例如1//2=0和1.0//2=0.0。

对于整数除法(1/2=0)和长整数,在python3中已经改进了,默认1/2是浮点计算,长整数会自动识别。
类型检查,是任何时候都不应该做的事情。
十六进制0x开头,八进制0o开头(估计3以前是0开头)。

二.表达式
表达式是某件事情,语句是做某件事情。语句不是表达式,没有值可供打印出来。打印(print)语句只是恰好执行打印而已,python3中print已经变成了一个函数。


三.函数
pow(2,3)乘方函数——2的3次幂
abs(-10)取绝对值——-10的绝对值为10
round(0.5)把浮点数四舍五入为最接近的整数——0.5四舍五入为1.0
floor(42.9)向下取整——42.0
ceil(42.9)向上取整——43.0
sqrt(4)平方根——2.0

四,模块

导入到python以增强其功能的扩展,使用import来导入。使用“模块.函数”的格式调用。例如floor函数(在名为math的模块下)

>>> import math

>>> math.floor(32.9)

32.0

转换为整数

>>> int(math.floor(32.9)) #int类型在把参数转换为整数的时候会自动向下取整

32

Int,long,float并不是函数,而是类型对象(type object)

在确定自己不会从多个不同模块导入多个同名函数的情况下,可以采用“from模块import函数”的形式导入,这样调用的时候就不需要模块名作为前缀了。例

>>> from math import sqrt

>>> sqrt(9)

3.0

可以使用变量或者python中的大多数对象来引用函数,例如

>>> import math

>>> foo = math.sqrt

>>> foo(4)

2.0

除非真的需要from这个形式的模块导入语句,否则应该坚持使用普通的import。

虚数均以j(J)结尾,python本身支持复数。Python中没有单独的虚数类型,所以虚数可以看做实数部分为0的复数。

raw_input这个函数在3.2.3版本后取消了。

Python的单行注释使用#

五.字符串

打印字符串的时候可以使用单引号,也可以使用双引号。单引号可以用于输出双引号,双引号可以用于输出单引号。当然也可以使用转义字符 。

例如:>>> ‘”Hello World!”I said.’

>>> “Let’s go”

使用长字符串和原始字符串可以减少绝大多数反斜线的使用。

拼接字符串,将一个字符串放在另一个的后面,可以连接字符串,例如>>> “Let’s say”’”Hello World!”’

用+号可以连接字符串。

Python打印值的时候会保持该值在python代码中的状态,而不是我们希望用户看到的状态。使用print就不会如此了。例:

>>> “Hello World!”

‘Hello World’

>>> print(“Hello World!”)

Hello World

这其实是值被转换为字符串的两种机制。str和repr

str函数把值转换为合理形式的字符串,以便用户可以理解。

repr函数会创建一个字符串,以合法的Python表达式的形式来表示值。例:

>>> print repr(“Hello World!”)

‘Hello World!’

>>> print str(“Hello World!”)

Hello World!

repr函数可以写作`x`来实现(反引号),在要打印包含数字的句子时,非常有用。例:

>>> temp = 42

>>> print “The temperature is ”+`temp`

The temperature is 42

但是反引号在Python3.0中已经不使用了,应该坚持使用repr函数。

str是类型(类似于int),而repr是函数。

长字符串,使用三个单引号或者双引号。你可以在这种字符串中同时使用单引号和双引号而不需要转义。如果使用双引号,最后挨着三个双引号的不能是双引号。单引号同样。

普通字符串也可以换行,如果一行的最后是反斜杠,那么换行符就被自动转义了,被忽略。例如:

>>> “Hello, \

World!”

‘Hello, World!’

原始字符串不会把反斜线当做特殊字符,所以在正则表达式中非常有用。原始字符串以r开头。例:

>>> print r’Hello World!’

引号也是需要转义的,但是打印的结果中会包含转义用的反斜线。例如:

>>> print r’Let\’s go!’

Let\’s go!

不能在原始字符串结尾输入反斜杠,除非对反斜线进行转义。

Unicode字符串其实是Unicode对象,跟字符串并不是同一类型。使用u作为前缀。在python3.0中,所有字符串都是Unicode字符串。

>>> u’Hello World!’

‘Hello World!’

因为我的python是3.0以上,所以会打印这个。但是在旧版本中,估计是打印u’Hello World!’


  0