python内建数据结构

分类

数值型:  int  float  complex  bool

序列对象: 字符串str  列表list  元组tuple

键值对:  集合set  字典dict

数值型 (list float complex bool都是class)

int:python3 中 int 就是长整型,没有大小限制

float:支持十进制和科学计数法表示,由C的双精度型实现

complex:由实数和虚数部分组成,实部和虚部都是浮点数

bool:int 的子类,仅有2个实例 True 和 False 对应 1 和 0,可以和整数直接运算

类型转换(built-in)

int(x)返回一个整数

int(7)
7

float(x)

float(7)
7.0

complex(x),complex(x,y)返回一个复数

complex(7),complex(7,8)
((7+0j), (7+8j))

bool(x)返回布尔值

bool(7)
True

数字的函数处理

int()截取整数部分

print('正数:',int(7.01),int(7.49),int(7.50),int(7.51),int(7.99),'复数:',int(-7.01),int(-7.49),int(-7.50),int(-7.51),int(-7.99))
正数: 7 7 7 7 7 复数: -7 -7 -7 -7 -7

// 向下取整

print('正数:',int(7//2),int(7//3),int(7//4),int(7//5),int(7//6),'复数:',int(-7//2),int(-7//3),int(-7//4),int(-7//5),int(-7//6))
正数: 3 2 1 1 1 复数: -4 -3 -2 -2 -2

floor()向下取整

import math    #导入math模块
print('正数:',math.floor(7.01),math.floor(7.49),math.floor(7.50),math.floor(7.51),math.floor(7.99))
print('复数:',math.floor(-7.01),math.floor(-7.49),math.floor(-7.50),math.floor(-7.51),math.floor(-7.99))
正数: 7 7 7 7 7
复数: -8 -8 -8 -8 -8

ceil()向上取整

import math
print('正数:',math.ceil(7.01),math.ceil(7.49),math.ceil(7.50),math.ceil(7.51),math.ceil(7.99))
print('复数:',math.ceil(-7.01),math.ceil(-7.49),math.ceil(-7.50),math.ceil(-7.51),math.ceil(-7.99))
正数: 8 8 8 8 8
复数: -7 -7 -7 -7 -7

round()四舍,六入,五取最近的偶数

print('正数:',round(7.01),round(7.49),round(6.50),round(7.50),round(7.51),round(7.99))
print('复数:',round(-7.01),round(-7.49),round(-6.50),round(-7.50),round(-7.51),round(-7.99))
正数: 7 7 6 8 8 8
复数: -7 -7 -6 -8 -8 -8

min()取最小

两种表示方法

min(range(5))
min(0,1,2,3,4,5)

max()取最大

pow(x,y)平方,等同于x**y

pow(2,3)
8

math.sqrt()开方,等同于x**0.5

import math
math.sqrt(2)
1.4142135623730951

类型判断

type可以判断对象类型,type(a)返回值为类型,不是字符串

type(7),type(7.1),type(bin(7)),type(False)
(int, float, str, bool)

isinstance(obj,class_or_tuple)判断类型,返回值为布尔,可以判断子类

isinstance(7,str)
False
isinstance(7,(str,bool,int))
True
1 + True + 2.2    #隐式类型转换,整型向浮点型转换
4.2

列表list、链表、queue、stack

list 使用[ ]表示,列表是可变的

一个队列,开辟连续的内存空间

列表内的个体称为元素,元素可以是任意对象(数字,字符串,对象,列表等),元素在列表内依序排列,可以使用索引

列表查询速度快,改变数据对性能影响大

链表是可变的,在内存中随机排列

单向链表:有下一位的内存地址

双向链表:有上一位和下一位的内存地址

queue队列:不可变数据,先进先出

stack栈:不可变数据,后进先出

Python列表操作与深浅拷贝(5)——数字处理函数、类型判断、列表链表队列栈的更多相关文章

  1. Python列表操作与深浅拷贝(6)——列表索引、查询、修改、扩展

    列表list定义 L1 = [] L2 = [1,2,'abc'] L3 = list() L4 = list(range(5)) L5 = [1,'abc',True,None,[4,5,'abc' ...

  2. Python列表操作与深浅拷贝(7)——列表深浅拷贝、删除、反转、排序

    列表复制 浅拷贝:简单类型元素全复制,引用类型元素只复制引用 L1 = [3,2,1,[4,5,6],8,'abc'] L1 [3, 2, 1, [4, 5, 6], 8, 'abc'] L2 = L ...

  3. python之路(三)-深浅拷贝

    深浅拷贝用法来自copy模块. 导入模块:import copy 浅拷贝:copy.copy 深拷贝:deepcopy 字面理解:浅拷贝指仅仅拷贝数据集合的第一层数据,深拷贝指拷贝数据集合的所有层.所 ...

  4. Python【第二篇】运算符及优先级、数据类型及常用操作、深浅拷贝

    一.运算符及优先级 Python 运算符(算术运算.比较运算.赋值运算.逻辑运算.成员运算) 1.算数运算符 运算符 描述 实例,a=20,b=10 + 加 a+b输出结果30 - 减 a-b输出结果 ...

  5. python学习笔记:深浅拷贝的使用和原理

    在理解深浅拷贝之前,我们先熟悉下变量对象和数据类型 1.变量和对象 变量-引用-对象(可变对象,不可变对象) 在python中一切都是对象,比如[1,2],'hello world',123,{'k1 ...

  6. python变量存储和深浅拷贝

    python的变量及其存储 在高级语言中,变量是对内存及其地址的抽象.对于python而言,python的一切变量都是对象,变量的存储,采用了引用语义的方式,存储的只是一个变量的值所在的内存地址,而不 ...

  7. python内存相关以及深浅拷贝讲解

    3.9 内存相关 3.9.1 id,查看内存地址 >>> v1 = [11,22,33] >>> v2 = [11,22,33] >>> prin ...

  8. Python collection模块与深浅拷贝

    collection模块是对Python的通用内置容器:字典.列表.元组和集合的扩展,它包含一些专业的容器数据类型: Counter(计数器):dict子类,用于计算可哈希性对象的个数. Ordere ...

  9. Python面试题目之深浅拷贝浅析

    # copy.copy 浅拷贝 只拷贝父对象,不会拷贝对象的内部的子对象. **只是简单的指针赋值 # copy.deepcopy 深拷贝 拷贝对象及其子对象 **指针赋值,且内容拷贝 用一个简单的例 ...

随机推荐

  1. 6. Go语言—字符串操作

    一.字符串支持的转义字符 \r 回车符(返回行首) \n 换行符(直接跳到下一行的同列位置) \t 制表符 \' 单引号 \" 双引号 \\ 反斜杠 \uXXXX Unicode字符码值转义 ...

  2. day58_9_24多对多建表手动,form组件(判断类型),cookies和session

    一.多对多建表关系之手动添加. 1.全自动 像之前讲过的一样,我们可以通过manytomanyField的字段来建立多对多关系: class Book(models.Model): title = m ...

  3. 读取本地文件转化成MultipartFile

    介绍 现在有个上传文件功能,需要将文件上传到oss上,但是文件有点多,于是使用接口进行上传.但是需要上传文件转换为MultipartFile类型文件进行上传. 主要代码 添加pom文件 <dep ...

  4. SOA案例分析浅谈

    SOA是英文 Service-Oriented Architecture 三个首字母单词的缩写,中文译为: 面向服务架构 ( SOA), SOA架构与 B/S . C/S 架构是目前最流行三种 Web ...

  5. 安卓和IOS、微信 公用一个二维码

    <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...

  6. css3之水波效果

    这些效果可谓多种多样,当然用canvas.svg也都能实现奈何对这些有不熟悉(尴尬),不过咱们用css来写貌似也没想象中的那么难吧. 一  悬浮球水波效果 效果图 css .container { w ...

  7. jquery模拟点击事件

    在某些情况下,我们需要自动执行一些点击事件.比如:一些 tab 一般是通过点击事件来加载不同的数据内容. 而如果要页面加载完直接显示第三个 tab,怎么办呢?此时就需要用到 jQuery 的模拟点击事 ...

  8. flutter,SliverPersistentHeader实现Tab顶部吸附固定效果

    直接上代码啦 import 'package:flutter/material.dart'; class StickyDemo extends StatefulWidget { @override _ ...

  9. .NET使用Bogus生成大量随机数据(转载)

    原文地址:https://www.cnblogs.com/sdflysha/p/20190821-generate-lorem-data.html 在演示Demo.数据库脱敏.性能测试中,有时需要生成 ...

  10. idea2019最新注册码(亲测有效)

    序言 最近发现经常用的idea注册用的License Server 又不能用了,估计是被"约谈了".内容如下: 虽然Community版本是免费使用的,但是在使用的过程中会出现各种 ...