由于python的安装网上已经有很多了,因此本文就不在进行讲解

运算符

本章节主要说明Python的运算符。举个简单的例子 4 +5 = 9 。 例子中,4 和 5 被称为操作数,"+" 称为运算符。

1、算数运算符

以下假设变量: a=5,b=20

运算符

描述

实例

+

加 - 两个对象相加

a + b 输出结果 25

-

减 - 得到负数或一个数减去另一个数

a - b 输出结果 -15

*

乘 - 两个数相乘或是返回一个被重复若干次的字符串

a * b 输出结果 100

/

除 - x除以y

b / a 输出结果 4

%

取模 - 返回除法的余数

b % a 输出结果 0

 **

幂 - 返回 x 的 y 次幂

a**b 为5的20次方

//

取整除 - 返回商的整数部分(向下取整)

b // a 的结果为 4

9 // 2 的结果为 4

-9 // 2 的结果为 -5

注意:Python2.x 里,整数除整数,只能得出整数。如果要得到小数部分,把其中一个数改成浮点数即可。

2、比较(关系)运算

以下假设变量: a=5,b=20:返回结果为:布尔值

运算符

描述

实例

==

等于 - 比较两个对象否相等

(a == b) 返回 false

!=

不等于 - 比较两个对象是否不相等

(a != b) 返回 true

<>

不等于 - 比较两个对象是否不相等

(a <> b) 返回 false

>

大于 - 返回 x 是否大于 y 

(a > b) 返回 false

<

小于 - 返回x是否小于y。

所有比较运算符返回1表示真,返回0表示假。这分别与特殊的变量True和False等价。

(a < b) 返回 true

>=

大于等于 - 返回 x 是否大于等于 y

(a >= b) 返回false

<=

小于等于 - 返回 x 是否小于等于 y

(a <= b) 返回 true

3、赋值运算

以下假设变量a为10,变量b为20:

运算符

描述

实例

=

简单的辅助运算符

c = a + b 的运算结果赋值为 c

+=

加法赋值运算符

c += a 等效于 c = c + a

-=

减法赋值运算符

c -= a 等效于 c = c - a

*=

乘法赋值运算符

c *= a 等效于 c = c * a

/=

除法赋值运算符

c /= a 等效于 c = c / a

%=

取模赋值运算符

c %= a 等效于 c = c % a

**=

幂赋值运算符

c **= a 等效于 c = c ** a

//=

取整除赋值运算符

c //= a 等效于 c = c // a

4、逻辑运算

Python语言支持逻辑运算符,以下假设变量 a 为 10, b为 20:

运算符

逻辑表达式

描述

实例

and

x and y

布尔“与” - 如果 x 为False, x and y 返回False,否则返回 y 的值

(a and b) 返回 20

or

x or y

布尔“或” - 如果 x 为非0,它返回 x 的值,否则它返回 y 的值 

(a or b) 返回10

not

not x

布尔“非” - 如果 x 为True,返回 False。如果 x 为False, 返回True。(相当于数学中的   “取反” )

(not x) 返回 False

5、成员运算符

除了以上的一些运算符之外,Python还支持成员运算符,测试实例中包含了一系列的成员,包括字符串,列表或元组。

运算符

描述

实例

in

如果在指定的序列中找到返回值True,否则返回False。

x 在 y 序列中,如果 x 在 y 序列中返回True。

not in

如果在指定的序列中没有找到值返回True,否则返回False。

x 不在 y 序列中,如果 x 不在 y 序列中返回True。

基本数据类型

1、数字

int(整型)

在32位操作系统上,整数的位数为32位,取值范围为 -2**31 ~ 2**32-1,即:-2147483648 ~ 2146473647

在64位操作系统上,整数的位数为64位,取值范围为 -2**63 ~ 2**63-1,即:-9223372036854775808~9223372036854775807

2、布尔值

真或假

0 或 1

True或False

3、字符串

“hello world”

字符串常用功能:

  • 移除空白
  • 分割
  • 长度
  • 索引
  • 切片

4、列表

创建列表:

name_list = ['monkey','tfl','zyy']
或
name_list = list(['monkey','tfl','zyy'])

基本操作:

  • 索引
  • 切片
  • 追加
  • 删除
  • 长度
  • 切片
  • 循环
  • 包含

5、元祖(不可变)

创建元祖:

age = (11,22,33,44,55)
或
age = tuple((11,22,33,44,55))

基本操作:

  • 索引
  • 切片
  • 循环
  • 长度
  • 包含

6、字典(无序)

创建字典:

person = {'name':'tfl','age':'26'}
或
person = dict({'name':'zyy','age':'26'})

基本操作:

  • 索引
  • 新增
  • 删除
  • 键、值、键值对
  • 循环
  • 长度

注意:循环:range,continue 和 break

其他

1、for循环

用户按照顺序玄幻可迭代对象中的内容

li = [11,22,33,44]
for item in li:
    print item

2、enumerate

为可迭代对象添加序号

li = [11,22,33,44]
for k,v in enumerate(li,1):
    print(k,v)

3、range和xrange

在指定范围,生成指定的数字 range(start,end,步长)

print range(1,10)
# 结果:[1,2,3,4,5,6,7,8,9]
print range(1,10,2)
# 结果:[1,3,5,7,9]
print range(30,0,-2)
# 结果:[30,28,26,24,22,20,18,16,14,12,10,8,6,4,2]

练习

1、元素分类

有如下值集合 [11,22,33,44,55,66,77,88,99,90...],将所有大于 66 的值保存至字典的第一个key中,将小于 66 的值保存至第二个key的值中。
即: {'k1': 大于66的所有值, 'k2': 小于66的所有值}

2、查找

查找列表中元素,移除每个元素的空格,并查找以 a或A开头 并且以 c 结尾的所有元素。

    li = ["tfl", " aric", "ajax", "Tony", "rain"]

    tu = ("alec", " aric", "ajax", "Tony", "rain") 

    dic = {'k1': "alex", 'k2': ' aric',  "k3": "Alex", "k4": "Tony"}

3、输出商品列表,用户输入序号,显示用户选中的商品

    商品 li = ["手机", "电脑", '鼠标垫', '游艇, '支架']

4、购物车

功能要求:

  • 要求用户输入总资产,例如:2000
  • 显示商品列表,让用户根据序号选择商品,加入购物车
  • 购买,如果商品总额大于总资产,提示账户余额不足,否则,购买成功。
  • 附加:可充值、某商品移除购物车
goods = [
    {"name": "电脑", "price": 5999},
    {"name": "鼠标", "price": 410},
    {"name": "游艇", "price": 12},
    {"name": "美女", "price": 998},
]

 5、用户交互,显示省市县三级联动的选择

dic = {
    "河北":{
        "石家庄":["鹿泉","温泉","元氏"],
        "邯郸": ["永年", "涉县", "磁县"],
    }
    "河南":{
        ...

    }
    "黑龙江":{
        ...
    }
}