python组合的语法_Python系列-------基本语法

Python中数据类型:

一.整数

python可以处理任意大小的整数,当然包括负整数,在python程序中,整数的表示方法和数学的写法一模一样。、

二.浮点数

浮点数也是小数,之所以称浮点数是因为按照科学计数法表示时,一个浮点数的小数点位置是可变的,例如1.23x10^9和12.3x10^8是相等的。

整数和浮点数在计算机内部存储的方式不同的,整数运算永远精确的,浮点数运算则可能会被四舍五入。

三.字符串

字符串是以‘ ’或 “ ”括起来的任意文本。

四.布尔值

布尔值和布尔代数的表示完全一致,一个布尔值只有True,False两种值(注意大写)。

布尔值可以用and,or,not运算

五.空值

空值是python里一个特殊的值,用None表示,None不能理解为0,因为0是有意义的,而None是一个特殊的空值。

python输出语句:print

python的注释语:以#开头,直到行尾结束。

Python中的变量:

在Python中,变量使用一个变量名表示,变量名必须是大小写英文,数字和下划线的组合,且不能用数字开头。

在Python中 等号=是赋值语句,可以把任意数据类型赋值给变量,同一个变量可以反复赋值,而且可以是不同类型的变量。这种不固定类型的赋值称之为动态语句,反之,静态语句中定义变量必须指定变量类型,如果赋值类型不匹配,就会报错。

如何理解变量在计算机中的表示:

a = 'ABC'

b = a

a = 'XYZ'

print b

Python解释器

第一步在内存创建了一个‘ABC’的字符串,然后在内存中创建了一个名为a的变量,并把它指向'ABC'。

第二步是把变量b指向变量a所指向的数据。

第三步是给变量a重新赋值为'XYZ'。

第四步输出b为'ABC',b的指向并没有发生改变。

Python中定义字符串

在上文提到,字符串可以用‘ ’和“ ”表示

如果在字符串中包含‘ ’和“ ” 该如何表示呢

这时候,我们需要对字符串的某些特殊字符进行转义,Python字符串用 \ 进行转义 。

\n 表示换行

\t 表示一个制表符

\\表示 \ 字符本身

Python中raw字符串和多行字符串

如果一个字符串包含很多需要转义的字符,对每一个字符串都进行转义会很麻烦。为了避免这种情况,我们可以在字符串前面加一个前缀 r ,表示这是一个 raw 字符串,里面的字符就不需要转义了。

如果需要表示多行字符串,可以用'''...'''表示:

第一种:

'Line 1\nLine 2\nLine 3'

第二种:

'''Line 1

Line 2

Line 3'''

两种表示方法是一样的

Python中整数与浮点数

python支持对整数和浮点数直接进行四则混合运算,运算规则和数学上的四则运算规则完全一致。

与数学运算不同的是:Python的整数运算结果仍然是整数,浮点数运算仍然是浮点数,整数和浮点数混合运算的结果就变成了浮点数。

注意:在Python的整数除法时,除不尽的数仍然是整数,余数会被直接扔掉。不过,python提供了一个求余的运算% 可以计算余数。

Python按照索引访问list

list是一个有序集合,可以通过索引的方式来获取list中的指定元素。(索引从0开始)

list的倒序访问和正序访问相反。

L = [95.5, 85, 59]

print L[-1] //59

print L[-2] //85

print L[-3] //95.5

print L[0] //95.5

print L[1] //85

print L[2] //59

Python之添加新元素

第一种方式:用list的append()方法追加到list的末尾。

第二种方式: 用list的insert()方法,它接受两个参数,第一个参数是索引号,第二个参数是待添加的新元素。

L=['A','B','C']

L.append('D')

print L //['A','B','C','D']

L.insert(0,'D‘)

print L //['D','A','B','C']

注意:print前在python语法中不能有空格

Python从list删除元素

第一种方式:用list的pop()方法删除,pop()方法总是删掉list的最后一个元素,并且它返回这个元素。

第二种方式:使用pop(索引值)方法删除。

L=['A','B','C']

L.pop() //'D'

print L //['A','B']

L.pop(2) //'C'

print L //['A','B']

Python中替换元素

第一种方式:先将替换元素删除,再添加新元素。

第二种方式:直接根据索引替换对应的元素。

Python之创建tuple

tuple是另一种有序的列表,中文翻译为“元祖”。tuple和list非常类似,但是tuple一旦创建完毕,就不能修改了。

创建tuple和创建list唯一不同之处是用( )替代了[ ]。

Python之创建单元素tuple

tuple和list一样,可以包含0个,1个和人任意多个元素。包含0个元素的tuple,也就是空tuple。直接用()表示。

>>> t = (1)

>>> print t

1

由于()既可以表示tuple,又可以作为括号表示运算时的优先级,结果(1)被Python解释器计算结果1,导致我们得到的不是tuple,而是数字1.

正因为用()定义的tuple有歧义,所以在python规定,单元素tuple要多加一个逗号“ ,”来避免歧义。

>>> t = (1,)

>>> print t

(1,)

Python之“可变”的tuple

>>> t = ('a', 'b', ['A', 'B'])

>>> L = t[2]

>>> L[0] = 'X'

>>> L[1] = 'Y'

>>> print t

('a', 'b', ['X', 'Y'])

表面上看,tuple的元素确实变了,但其实变得不是tuple的元素,而是list的元素。tuple一开始指向的list并没有改成别的list,所以,tuple所谓的“不变”是说,tuple的每个元素,指向永远不变。即指向“a”,就不能改成指向“b”,指向一个list,就不能改成指向其他对象,但指向的这个list本身是可变的。

Python之if语句

Python代码的缩进规则。具有相同缩进的代码被视为代码块,缩进按照严格的Python的习惯写法:4个空格,不要使用Tab,更不要混合Tab和空格,否则很容易造成因为缩进引起的语法错误。

Python之if-else语句

利用if....else...语句,可以根据条件表达式打的值为True或者False,分别执行if代码或者else代码块。else有个“:”

Python之if-elif-else语句

在处理逻辑关系时,会出现多层嵌套的结构,而在python已经给出了很好地处理语法,引入了if.....多个elif...else....的结构,一次可以写完所有规则。

Python之for循环

list或tuple可以表示一个有序集合,对访问每一个元素可以使用 for 循环依次吧list或tuple的每一个元素迭代出来。

例如:

L = ['Adam', 'Lisa', 'Bart']for name inL:print name

Python之while循环

和for不同的是while循环,while循环不会迭代list或tuple的元素,而是根据表达式判断循环是否结束。

while循环每次首先判断x

Python之break退出循环

用 for 循环或者 while 循环时,如果要在循环体内直接退出循环,可以使用 break 语句。

Python之continue继续循环

在循环过程中,可以用break退出当前循环,还可以用continue跳过后续循环代码,继续下一次循环。

例如:

当 x 是偶数时,就通过continue语句提前进入下一次循环。

continue判断的位置非常重要。

sum=0

x=0whileTrue:

x= x + 1

if x > 100:break

if x % 2 ==0:continuesum= sum +xprint sum

Python之多重循环:

对100以内的两位数,请使用一个两重循环打印出所有十位数数字比个位数数字小的数,例如,23(2 < 3)。for x in [ 1, 2, 3, 4, 5, 6, 7, 8, 9]:for y in [ 1, 2, 3, 4, 5, 6, 7, 8, 9]:if x < y:print x*10 + y

Python之dict

在Python中,dict中存在形如key-value可以快速查找所需要的的信息。使用{}符号表示

dict的第一个特点是查找速度快,无论dict有10个元素还是10万个元素,查找速度都一样。而list的查找速度随着元素增加而逐渐下降。不过dict的查找速度快不是没有代价的,dict的缺点是占用内存大,还会浪费很多内容,list正好相反,占用内存小,但是查找速度慢。

由于dict是按 key 查找,所以,在一个dict中,key不能重复。

dict的第二个特点就是存储的key-value序对是没有顺序的!这和list不一样。所以打印的顺序不一定是我们创建的,而且,不同机器打印的顺序可能会不同,不能用dict存储有序的集合。

dict的第三个特点是作为 key 的元素必须不可变,Python的基本类型如字符串、整数、浮点数都是不可变的,都可以作为 key。但是list是可变的,就不能作为 key。

Python更新dict

dict是可变的,我们可以随时往dict中添加新的key-value。

如果key值不存在,可以赋值语句添加。

如果key值存在,则会更新value值。

Python之遍历dict

由于dict也是一个集合,所以,遍历dict和遍历list类似,都可以通过 for 循环实现。

Python中的set

dict的作用是建立一组 key 和一组 value 的映射关系,dict的key是不能重复的。有的时候,我们只想要 dict 的 key,不关心 key 对应的 value,目的就是保证这个集合的元素不会重复,这时,set就派上用场了。

set 持有一系列元素,这一点和 list 很像,但是set的元素没有重复,而且是无序的,这点和 dict 的 key很像。

创建 set 的方式是调用 set() 并传入一个 list,list的元素将作为set的元素:(set不能包含重复的元素,会自动去掉重复元素)

>>> s = set(['A', 'B', 'C'])>>> prints

set(['A', 'C', 'B'])

请注意,上述打印的形式类似 list, 但它不是 list,仔细看还可以发现,打印的顺序和原始 list 的顺序有可能是不同的,

因为set内部存储的元素是无序的。

由于set存储是无序集合,所以没有办法通过索引来访问。然而访问set中的某一个元素就是判断一个元素是否存在set中。使用in操作符判断。

set的特点:

set的内部结构和dict很像,唯一区别是不存储value,因此,判断一个元素是否在set中速度很快。

set存储的元素和dict的key类似,必须是不变对象,因此,任何可变对象是不能放入set中的。

最后,set存储的元素也是没有顺序的。

set的实例:

months = set(['Jan', 'Feb', 'Mar', 'Apr', 'May', 'Jun', 'Jul', 'Aug', 'Sep', 'Oct', 'Nov', 'Dec'])

x1 = 'Feb'

x2 = 'Sun'

if x1 in months:

print 'x1: ok'

else:

print 'x1: error'

if x2 in months:

print 'x2: ok'

else:

print 'x2: error'

输出:

x1: ok

x2: error

更新set

由于set存储的是一组不重复的无序元素,因此,更新set主要做两件事:

一是把新的元素添加到set中,

二是把已有元素从set中删除。

添加元素时,用set的add()方法:

>>> s = set([1, 2, 3])>>> s.add(4)>>> prints

set([1, 2, 3, 4])

如果添加的元素已经存在,add()不会报错,但也不会加进去。

删除set中的元素时,用set的remove()方法:

>>> s = set([1, 2, 3, 4])>>> s.remove(4)>>> prints

set([1, 2, 3])

如果删除的元素不存在,remove()会报错。

Python之函数

编写函数:

在Python中,定义一个函数要使用 def 语句,依次写出函数名、括号、括号中的参数和冒号:,然后,在缩进块中编写函数体,函数的返回值用 return 语句返回。

例子:

defmy_abs(x):if x >=0:returnxelse:return -x

请注意,函数体内部的语句在执行时,一旦执行到return时,函数就执行完毕,并将结果返回。因此,函数内部通过条件判断和循环可以实现非常复杂的逻辑。如果没有return语句,函数执行完毕后也会返回结果,只是结果为 None。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值