Python开发【第三篇】数据类型
1.数字类型
| int | 整数 | 1 2 3 |
|---|---|---|
| float | 浮点数 | 1.1 0.9 0.99 |
| complex | 复数 | (2+0j) |
| str | 字符串 | 'hello world' "hello world" |
| list | 列表 | ["hello world",1,2,3,{"name":"liuwei"},(1,2,3,4)] |
| tuple | 元组 | (1,2,3,4,5,"hello world",) |
| dict | 字典 | {"name":"liuwei","list":["helloworld":"hello"]} |
| set | 集合 | {"name","123123"} {"name",123} |
| bool | 布尔 | True False |
| None | 空值 |
数值对象的构造函数(创建函数)
obj指对象
| 类型 | 说明 |
|---|---|
| int(obj) | 把浮点数或者字符串的数字转换为整数。 |
| float(obj) | 把字符串或者数字转换为浮点数。 |
| complex(r = 0.0,i=0.0) | 生成一个复数,实部为r,虚部为i |
| bool(obj) | 把obj创建一个布尔值 |
算数运算符
| 运算符 | 说明 |
|---|---|
| + | 加 |
| - | 减 |
| * | 乘 |
| / | 除 |
| // | 地板除 |
| % | 求余 |
| ** | 幂运算 |
比较运算符
| 运算符 | 说明 |
|---|---|
| < | 小于 |
| <= | 小于等于 |
| > | 大于 |
| >= | 大于等于 |
| == | 判断左右值是否相等 |
| != | 判断左右值是否不相等 |
语法:左边和右边进行比较
说明:比较运算符返回布尔类型的值
例子:
a = 100
b = 200
a < b #True
a > b #False
1+5 == 2+4 #True
0<=60<=100 #True
赋值运算符
| 运算符 | 说明 |
|---|---|
| = | 右侧内容赋值给左侧变量 |
优先级
| 等级 | 说明 |
|---|---|
| ** | 幂运算 |
| * / % // | 乘 除 求余 地板除 |
| + - | 加 减 |
| %s | 字符串占位符 |
| %d | 整数占位符 |
| %f | 浮点数占位符 |
| %.2f | 浮点数%.2f(保留2位小数)2是可以改变的 |
#!/usr/bin/env python
# -*- coding: utf-8 -*-
name = '金毛狮王'
age = 66
print('%s今年%d岁'%(name,age))
python机制
del语句
1.用于删除变量,同时解除与对象的绑定关系,如果对象的绑定计数为0,变量和对象一起销毁。
语法:del 变量名
#!/usr/bin/env python
# -*- coding: utf-8 -*-
#例子1
name = '金毛狮王'
del name
#例子2
name1 = '小王'
name2 = '小李'
name3 = '小张'
del name1,name2,name3
查看当前作用域下已存在的变量
#在python交互模式下输入help("__main__")可以查看当前作用域下已存在的变量
自动化内存管理和引用计数机制
每个对象都会记录有几个变量(绑定)自己,当引用计数的数量为0的时候,则对象销毁,这种自动化内存管理的方式叫做引用计数
注:我们把变量名叫做对象

当把两根树桩上栓羊的绳子切断,那羊就跑走了!Python中的意思就是:当对对象引用的数量为0的时候,内存会释放对象。
这里的对象就是那头羊!
判断运算符
判断两个对象是否为一个对象,当是同一个对象时,返回True,否则返回False
is not 和 is 的返回值相反
语法: x = 10
b = x
x is b #True
x is not b #False
小整数对象池
在使用is 和is not 判断整数的时候,如果超过-5和256这个值表明不是同一个整数
a = 257
b = 257
a is b
False
a = -6
b = -6
a is b
False
id函数
作用:返回一个对象在内存中的地址
说明:is 是根据id来进行判断的
语法:id(对象)
内置的数值型函数
x 是变量名
abs(x) #求X的绝对值
round(number[ndigit]) #对数值进行“四舍五入”,ndigit是小数向右取整的位数,负数表示向左取整
pow(x,y,z=None) #相当于x**y活着x**y%2
| abs(-100) | 100 |
|---|---|
| round(1234.56789) | 1234 |
| round(1234.56789,2) | 1234.57 |
| round(1234.56789,4) | 1234.5679 |
| round(1234.56789,-2) | 1200.0 |
| pow(5,2) | 25 |
| pow(5,2,10) | 5 |
注:
- round是按照二进制进行取舍,ndigit代表取舍的位
- pow相当于x的y次方,如果y次方后面有求余的数,就要对后面的数求余
Python开发【第三篇】数据类型的更多相关文章
- Python开发第三篇
函数 一.函数参数传值 形参:函数在定义的时候给定的参数 实参:函数在运行时赋给的参数: def func(i):#i为定义时的参数,为形参 pass func(name)#name为运行时的参数,为 ...
- Python开发【第一篇】:目录
本系列博文包含 Python基础.前端开发.Web框架.缓存以及队列等,希望可以给正在学习编程的童鞋提供一点帮助!!! Python开发[第一篇]:目录 Python开发[第二篇]:初识Python ...
- Python开发【第一篇】:目录
本系列博文包含Python基础.前端开发.Web框架.缓存以及队列等,希望可以给正在学习Python编程的朋友们提供一点帮助! .Python开发[第一篇]:目录 .Python开发[第二篇]:初始P ...
- Python开发【第二篇】:初识Python
Python开发[第二篇]:初识Python Python简介 Python前世今生 python的创始人为吉多·范罗苏姆(Guido van Rossum).1989年的圣诞节期间,吉多·范罗苏 ...
- 解剖SQLSERVER 第三篇 数据类型的实现(译)
解剖SQLSERVER 第三篇 数据类型的实现(译) http://improve.dk/implementing-data-types-in-orcamdf/ 实现对SQLSERVER数据类型的解 ...
- Python开发【第二篇】:Python基础知识
Python基础知识 一.初识基本数据类型 类型: int(整型) 在32位机器上,整数的位数为32位,取值范围为-2**31-2**31-1,即-2147483648-2147483647 在64位 ...
- python数据挖掘第三篇-垃圾短信文本分类
数据挖掘第三篇-文本分类 文本分类总体上包括8个步骤.数据探索分析->数据抽取->文本预处理->分词->去除停用词->文本向量化表示->分类器->模型评估.重 ...
- Eclipse和PyDev搭建完美Python开发环境 Windows篇
1,安装Python Python是一个跨平台语言,Python从3.0的版本的语法很多不兼容2版本,官网找到最新的版本并下载:http://www.python.org, 因为之前的一个项目是2版本 ...
- Python开发【第一篇】基础题目二
1 列表题 l1 = [11, 22, 33] l2 = [22, 33, 44] # a. 获取l1 中有,l2中没有的元素 for i in l1: if i not in l2: # b. 获取 ...
- Python开发【第二篇】:初始Python
Python的前世今生 Python的创始人为吉多·范罗苏姆(Guido van Rossum).1989年的圣诞节期间,中国人称他为龟叔,他在圣诞节期间在阿姆斯特丹为了打发时间,决定开发一个新的脚本 ...
随机推荐
- Elastic Stack 笔记(四)Elasticsearch5.6 索引及文档管理
博客地址:http://www.moonxy.com 一.前言 在 Elasticsearch 中,对文档进行索引等操作时,既可以通过 RESTful 接口进行操作,也可以通过 Java 也可以通过 ...
- leetcode - 最小移动次数使数组元素相等
思路 (假设数组每次都已被排好序) 每次使得小于等于最大值的n-1的数字加1,直接暴力求解会超时 改进一: 为了让最小元素等于最大元素,至少需要数组中最大值-最小值次, 所以以此为基础再次暴力求解(参 ...
- [Linux] CentOS安装GNOME时,fwupdate-efi-12-5.el7.centos.x86_64 conflicts with grub2-common-1:2.02-0.65.el7.centos.noarch
参考文章:https://createdpro.com/a/100006 该问题源于文件的版本冲突: grub2-common包的冲突,所以要将该包使用yum update grub2-commonn ...
- [Linux] Linux中重命名文件和文件夹的方法(mv命令和rename命令)
原文链接 在Linux下重命名文件或目录,可以使用mv命令或rename命令,这里分享下二者的使用方法. mv命令既可以重命名,又可以移动文件或文件夹. 例子:将目录A重命名为B mv A B 例子: ...
- [C++] 重载运算符与类型转换(1)
1.形式:返回值 operator符号(参数列表){} 2.不能被重载的运算符::: 作用域运算符 .* . 成员访问运算符 ?: 条件运算符:某些运算符(逗号,,取地址&, ...
- Transformer各层网络结构详解!面试必备!(附代码实现)
1. 什么是Transformer <Attention Is All You Need>是一篇Google提出的将Attention思想发挥到极致的论文.这篇论文中提出一个全新的模型,叫 ...
- fslove - Matlab求解多元多次方程组
fslove - Matlab求解多元多次方程组 简介: 之前看到网上的一些资料良莠不齐,各种转载之类的,根本无法解决实际问题,所以我打算把自己的学到的总结一下,以实例出发讲解fsolve. 示例如下 ...
- 浏览器兼容性知识&测试计划&测试报告
浏览器兼容性知识&测试计划&测试报告 浏览器兼容性问题:网页或网站兼容性问题,因为不同浏览器使用内核及所支持的HTML(标准通用标记语言下的一个应用)等网页语言标准不同:以及用户客户端 ...
- 从一道面试题深入了解java虚拟机内存结构
记得刚大学毕业时,为了应付面试,疯狂的在网上刷JAVA的面试题,很多都靠死记硬背.其中有道面试题,给我的印象非常之深刻,有个大厂的面试官,顺着这道题目,一直往下问,问到java虚拟机的知识,最后把我给 ...
- Maven报错: Could not resolve archetype org.apache.maven.archetypes:maven-archetype-webapp
郁闷了两天,创建maven项目时,eclipse报错:Could not resolve artifact org.apache.maven.archetypes:maven-archetype-we ...