Python数值运算及序列类型的讲解-阿里云开发者社区

开发者社区> 开发与运维> 正文
登录阅读全文

Python数值运算及序列类型的讲解

简介: Python数值运算及序列类型的讲解,运用切片方法

第一次在阿里云开发者社区发文章,夏柔在这里做一下自我介绍吧~

本人16,坐落沈阳,在校高校生一枚~

来这里的目的除了向大佬请教问题和查阅文章,还有一个伟大的梦想(早日进入阿里哈哈哈)

不多废话,进入正题,大佬勿喷!



一、运算符号

符号含义
+数字相加的符号
-数字相减的符号
*数字相乘的符号
/数字相除的符号
%数字取余的符号
//数字取整的符号
**数字相乘几次幂
......

Python 3

举例:

例子1: 1+1
例子2: 1-1
例子3: (1+1)*4
例子4: 50//2
例子5: 2**10
例子6: 5%2
例子7: (5%2)*2
例子8: (149/109)*(109%12)*(19+194+(1948%3))

 

上面所讲的例子, 都可以运行并且实现, 但每个单运算必须有衔接

比如 (19*12)(19+33) 或 (1+1(1*1))+(1+1+(30*94))

这样是无法运行的, 计算机看不懂两个括号在一起是什么意思 包括大括号中的小括号

二、变量

数值类型(4种): int float bool complex

2.1 int 类型

int类型是整数, 例如: 1,2,10,100,1500

注: 变量的命名规则: 可包含数字字母

错误行为: 使用中文、数字开头、单个字符、包含小数点

错误举例:

易懂:

数字 = 数字
数字 = 字母
数字 = 字符
——————
字符 = 数字
字符 = 字母
字符 = 字符
——————
中文 = 数字
中文 = 字母
中文 = 字符

代码举例:

1 = 1
1 = wpon
1 = %
举一反三扩展: 
1 = 1wpon
1 = wpon666
1 = wpon%wpon
——————
% = 1
% = wpon
% = %
——————
夏柔 = 1
夏柔 = wpon
夏柔 = %

正确举例:

wpon = www
w1      = www
w1w   = www
11111  = www
wpon  = 111www

2.2 Bool( Bool类型 )

输入字母一定要首字母大写, 例如:

True False

2020112412334563.png例子输出

如果不输出首字母大写且没有被定义的字母, 则计算机不认识 输出会报错, 如上图显示

2.3 float( float类型 )

float() 函数用于将整数和字符串转换成浮点数。

小数 例如: 1.4 1.3 1.70

>>>float(1)
1.0
>>> float(112)
112.0
>>> float(-123.6)
-123.6
>>> float('123')     # 字符串
123.0

三、字符串

3.1 str( str类型 )

str: 引号包围的就是字符串 单引号 / 双引号 / 三引号

3.2 list( list类型 )

list() 方法用于将元组转换为列表。

注:元组与列表是非常类似的,区别在于元组的元素值不能修改,元组是放在括号中,列表是放于方括号中。

2020112413061744.pnglist 用法

扩展:

  • 列表最外面始终括号, 元祖最外面是小括号
  • 列表可变 元祖不可变
  • 元素与元素之间用逗号隔开
  • 元祖里面只有一个元素的时候, 用逗号隔开

扩展例子:

>>> a = (1)
>>> type(a)
<class 'int'>
>>> a = (1)
>>> type(a)
<class 'int'>
>>> a = (1,)
>>> type(a)
<class 'tuple'>
>>>

元祖转换必须包含符号 ,

2020112413120795.pnglist的列表的定义2020112413134865.pngtu的元祖的定义


四、序列类型

4.1 索引取值:

>>> li = [1,2,3,4,5,6]

#索引取值 每一个序列类型都有下标, 下标是从0开始的

 

2020112413250061.png序列演示

取值演示:

2020112413261688.png

负一 代表整个元祖列表的最后面, 如图是6, 则输出为6 以此类推, 本演示最终负为6

扩展: 索引取值, 负向取值 -1 取的就是最后一个元素,负值越小, 取的越靠前

自行敲代码, 不建议按照理论知识去背

4.2 切片取值:

2020112413305344.png

扩展: 切片取值, 取头不取尾

2020112413250061-2.png序列演示

上图所示, 序列列表的图里总共有5个数字, 则 0:5 告诉计算机切出0~5的数

li = [1,2,3,4,5,6] 尾巴不取, 输入: li[0:5]则输出为: 1,2,3,4,5

li = [1,2,3,4,5,6] 尾巴要取, 输入: li[0:6]则输出为: 1,2,3,4,5,6 

如果没看懂, 我们再来看一遍

li = [1,2,3,4]

  • 1代表0
  • 2代表1
  • 3代表2
  • 4代表3

比如我需要取出2和3, 按照取头不取尾的定律, 则需要在终端输入: li[1:3]

3为4, 代表尾巴, 计算机不取尾巴, 则最终输出结果: 2,3


负数同样规律 从小往大取, 例子:

li = [1,2,3,4,5,6]

取值: li[-5:-1] 输出结果: 2,3,4,5


扩展:

  • 正数是从左往右数,并且最左边的1代表为0 起步
  • 负数是从右往左数,并且最右边的 6 代表为1
  • 取值的写法不能为 从大到小取值, 例如 li[-1:-5] 这样是错误的 必须需要有交集
  • 负数和正数不能同时输入 , 例如: li[-1:5] 这样是错误的

4.3 区间取值:

原: li[1,2,3,4,5,6]

输入: li[0:5:1] 取值结果[1,2,3,4,5]

扩展: 1为正常从左往右取值, 每个数字都要输出

输入: li[0:5:2] 取值结果[1,3,5]

2020112413521214.png区间取值

在 0:5 的区间里取 1,3,5 跳着取

2020112413562713.png

因为0:9 取出来是[1, 2, 3, 4, 5, 6, 7, 8, 9] 区间为3, 在[1, 2, 3, 4, 5, 6, 7, 8, 9]里取值,所以1,4,7 就没有输出了,7再跳是10, 但取值范围只到9

以此类推, 数越大越多,区间2则空1个,3则空2个,4则空3个...

重新举例:

2020112414025666.png

跳着取值, 多大的数都一样, 0:16:100则输出[1,空99个数字,第100个再输入进去]

>>> li = [1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17]
>>> li
[1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17]
>>> li[0:16]
[1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16]
>>> li[0:16:1]
[1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16]
>>> li[0:16:2]
[1, 3, 5, 7, 9, 11, 13, 15]
>>> li[0:16:3]
[1, 4, 7, 10, 13, 16]
>>> li[0:16:4]
[1, 5, 9, 13]
>>> li[0:16:5]
[1, 6, 11, 16]
>>> li[0:16:6]
[1, 7, 13]
>>> li[0:16:7]
[1, 8, 15]
>>> li[0:16:8]
[1, 9]
>>> li[0:16:9]
[1, 10]
>>> li[0:16:10]
[1, 11]
>>> li[0:16:11]
[1, 12]
>>> li[0:16:12]
[1, 13]
>>> li[0:16:100]
[1]

 

暂时没写太多,哈哈~

版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。

分享:
开发与运维
使用钉钉扫一扫加入圈子
+ 订阅

集结各类场景实战经验,助你开发运维畅行无忧

其他文章
最新文章
相关文章