python入门 之 数字(三)

注:

来自:《Python 编程 从入门到实践》

调试: Sublime Text2 Python3

 

常用符号:

操作符 描述 示例
+  2 + 3 --> 5
-  3 - 2  --> 1
*

鉴于计算机内部表示数字的方式,会出现如下情况:

3*0.2 -> 0.6000000000000001

在python2 中,两个整数相除只保留整数部分,比如 3/2 -> 1

在python3中,两个整数相除会有小数,比如 5/4 -> 1.25

// 整除 3//2 --> 1
% 取模 5%4 --> 1
** 指数 2**3 --> 8

比较操作符主要有 ==, !=, <, >, <=, >=等,它主要用于对整型和浮点型的比较,生成值为True或者False

5 >=4         # True
4 != 4        # False
4 == 4.0      # True

 

数值列表:

# range(),可获取整数序列,有3个参数:
## startValue 起始值,默认从0开始
## endValue 结束值 - 1
## addValue 每次累加值,默认为1
for value in range(0,5):         # range(5) 与range(0,5) 等价
    print(value)

#>>>
#0
#1
#2
#3
#4
for value in range(-1,-10,-2): print(value) #>>> #-1 #-3 #-5 #-7 #-9 # 创建数值列表,可使用list: numList = list(range(1,5,1)) print(numList) #[1, 2, 3, 4] numList = list(range(-1,-10,-2)) print(numList) #[-1, -3, -5, -7, -9]

对数字列表进行简单的统计计算,如下:

numTab = list(range(1,5))
# 使用 min 获取最小值
print(min(numTab))     #1
# 使用 max 获取最大值
print(max(numTab))     #4
# 使用 sum 获取总和
print(sum(numTab))     #10

列表解析

# 原列表
squares = []
for value in range(1,5):
    square = value ** 3
    squares.append(square)
print(squares)         #[1, 8, 27, 64]

# 等价
# 使用如下方法,要在[]内定义一份表达式,用于生成列表内的新值,然后编写一个for循环
newSquares = [value ** 3 for value in range(1,5)]
print(newSquares)    #[1, 8, 27, 64]

切片,即访问列表的部分元素

numTab = list(range(1,5))
print(numTab)         #[1, 2, 3, 4]

# 访问列表内 m ~ n-1 个元素(python列表的第一个元素从0开始)
print(numTab[1:3])    #[2, 3]
# 如果m为空,默认为0,即起始索引
print(numTab[:3])    #[1, 2, 3]
# 如果(n-1)为空,默认为结束索引
print(numTab[1:])    #[2, 3, 4]
# 如果都为空,默认为全部
print(numTab[:])     #[1, 2, 3, 4]

注意:

# [:] 可用于复制列表, 不可使用“=”
numTab = list(range(1,3))
newTab1 = numTab[:]
print(numTab)         #[1, 2]
print(newTab1)        #[1, 2]
# 在各个列表中添加不同的值
numTab.append(9)
newTab1.append(10)
print(numTab)         #[1, 2, 9]
print(newTab1)        #[1, 2, 10]

print('Error:')
numTab = list(range(1,3))
newTab1 = numTab
print(numTab)         #[1, 2]
print(newTab1)        #[1, 2]
# 在各个列表中添加不同的值
numTab.append(10)
print(numTab)         #[1, 2, 10]
print(newTab1)        #[1, 2, 10]

 

posted @ 2018-11-30 00:31  Code~  阅读(280)  评论(0编辑  收藏  举报