内存管理,数据类型的基本使用与基本运算符(python2中与用户交互)
1.CPython解释器的垃圾回收机制
什么是垃圾: 当一个值身上没有绑定任何变量名(该值的引用计数=0)时,该值就是一个垃圾
引用计数增加
age=18 #18的引用计数等于1
x=age #18的引用计数等于2
引用计数减少
age=19 #18的引用计数等于1
del x #18的引用计数等于0
2.变量值的三个特征:
id: 反映的是内存地址
type: 数据类型
age=18
print(id(age))
print(type(age))
print(age)
总结:
id相同,值一定相同
值相同,id可以不同
3. is 与 ==
== : 值是否相同
is : id是否相同
is: 比较的是id
而 == : 比较的是值
4. 可变与不可变类型
可变类型: 值改变,id不变,证明就是在改变原值
不可变类型: 值改变,id也变,证明根本不是在改变原值,是创建了新值,原值就是不可变类型
***************************************************************************************************************
1.python2中与用户交互
在Python3中只有input
特点: 会用户输入的任意内容都存成str类型
2. 在python 中只有一个raw_input,与python3的input一模一样
但要求用户必须输入一个明确的类型,输入什么类型就存成什么类型
************************************************************************************************************
数据类型的基本使用
一: 数字类型
整型 int
作用: 用来记录年龄,等级,各种号码状态
定义:
age=10 # age=int(10)
print(type(age))
使用:
print(age + 1)
print(age > 3)
2. 浮点型 float
作用: 用来记录身高,体重,工资状态
定义:
salary=3.1 #salary=float(3.1)
print(type(salary))
使用:
print(3.1 + 2.3)
print(3.1 > 2.3)
print(3.1 > 2)
print(3.1 + 2)
二: 字符串类型 str
作用: 用来记录描述性状态,比如名字,性别
定义:在单引号('')、双引号("")、三引号内(''' ''',""" """),包含一系列的字符
x='abc' # x=str('abc')
print(type(x))
y="abc"
z="""
abc xxxx
"""
print(type(x))
print(type(y))
print(type(z))
msg='my name is "egon"'
使用:
print('abc'+'def') # 仅限于str类型直接相加
print('abc'*10) # *的只能是数字
了解:ASCII表
x='abcdef'
y='z'
print(x > y)
print('a' > 'Z' )
print('a' > 10 )
三: 列表类型 list
作用: 用来记录多个值,用索引对应值,索引反映的是位置
定义: 在[]内用逗号分隔开多个任意类型的值
l=[1,3.1,'xxx',['a','b','c']] #l=list(...)
print(type(l))
使用
print(l[0])
print(l[2])
print(l[3][0])
students_info=[
['egon',18,['play',]],
['alex',18,['play','sleep']] ]
print(students_info[1][2][0])
四 : 字典类型 dict
作用: 用来记录多个值,用key对应value,其中key对value有描述性的功能定义: 在{}内用逗号分隔开多元素,每一个元素都是key:value的形式,其中value可以是任意类型的值,而key通常应该是str类型d={'x':1,'y':3.1,'z':['a','b'],'m':{'aaa':1111}} #d=dict(...)print(type(d))使用:print(d['x']) print(d['m']['aaa']) print(d['z'][1])
五: 布尔类型: True ,Flase
所有数据类型自带布尔值
布尔值为假的数据类型: 0 ,空 , None
六: None
print(type(None))
***************************************************************************************************
基本运算符
一. 比较运算符
> >=
< <=
==
!=
了解
x=None
print(x==None) True
print(x is None) True
二: 逻辑运算符
and: 连接左右两个条件,只有两个条件同时成立时and运算的结果为True
or : 连接左右两个条件,两个条件成立任意一个or运算的结果为True
not: 将后面的条件取反
转载于:https://www.cnblogs.com/huangchaonan/p/9983647.html
内存管理,数据类型的基本使用与基本运算符(python2中与用户交互)相关推荐
- Nginx内存管理详解
目录: 1.Nginx内存管理介绍 2.Nginx内存池的逻辑结构 3.Nginx内存池的基本数据结构 4.内存池基本操作介绍 5.内存池管理源码详解 6.内存池使用源码详解 7.小结 1.Nginx ...
- 服务器经常崩溃??让我们来看看简单的内存知识:C语言——内存管理
学习重点 : 1.全面掌握变量的特性,了解内存管理的概念. 2.全面掌握函数的使用. 局部变量与全局变量: 局部变量:就是在函数内部定义的变量.局部变量只在本函数内有效,也就是只能在本函数内使用它. ...
- C++---动态内存管理
C/C++内存分布 栈:存储非静态局部变量.函数参数.返回值. 内存映射段:动态库. 堆:程序运行时动态内存分配. 数据段:存储全局变量.静态数据. 代码段:可执行代码,只读常量. C语言中动态内存管 ...
- 尽力全面的C++内存管理
尽力全面的C++内存管理 前言 0. 管理内存的理由 1. Windows内存管理策略 附:物理内存 与 虚拟内存 2. Linux内存管理策略 附:brk() 和 mmap() 3. 内存对齐 3. ...
- 笔记②:牛客校招冲刺集训营---C++工程师(面向对象(友元、运算符重载、继承、多态) -- 内存管理 -- 名称空间、模板(类模板/函数模板) -- STL)
0618 C++工程师 第5章 高频考点与真题精讲 5.1 指针 & 5.2 函数 5.3 面向对象(和5.4.5.5共三次直播课) 5.3.1 - 5.3.11 5.3.12-14 友元 友 ...
- Block 本质、实现原理、内存管理、循环引用、__block等
一.Block介绍 1.1概念: 将函数及其执行上下文封装起来的对象 底层用struct实现 1.2block实现原理: a .新建项目 代码放入file.m中 b.打开终端cd到项目目录下 c.敲c ...
- Flink核心篇,四大基石、容错机制、广播、反压、序列化、内存管理、资源管理...
Flink基础篇,基本概念.设计理念.架构模型.编程模型.常用算子 大纲: 1.Flink的四大基石包含哪些? 2.讲一下Flink的Time概念? 3.介绍下Flink窗口,以及划分机制? 4.介绍 ...
- BEP 7:CUDA外部内存管理插件(下)
BEP 7:CUDA外部内存管理插件(下) Numba依赖 向库中添加EMM插件的实现自然会使Numba成为库的依赖项,而以前可能没有.为了使依赖关系可选,如果需要的话,可以有条件地实例化并注册EMM ...
- C++内存管理学习堆和栈
来源:http://c.chinaitlab.com/basic/936306_2.html 一 C++内存管理 1.内存分配方式 在讲解内存分配之前,首先,要了解程序在内存中都有什么区域,然后再详细 ...
最新文章
- LeetCode简单题之二叉搜索树的范围和
- nutch如何发布插件
- python 线程类 threading.Thread.join() 方法 (自闭,不让别人进来了)
- Codeforces Round #743 (Div. 2) D. Xor of 3 模拟 + 构造
- Larbin源代码分析[6]LARBIN中线程处理类
- [React]你有用过哪些React的表单库吗?说说它们的优缺点
- 微信开发SDK,Jeewx-Api 1.3.1 版本发布
- 基于MFC框架下OpenGL的exe可移植
- 圆形缓冲区(循环buffer)实现
- 【万字长文】整理一份全套的机器学习资料!
- ruby中调用dll的诡异错误
- 【Scratch 3.0游戏】—— 乒乓弹球游戏
- 如何在CSDN上上传资源
- www.ku6d.com采集目标
- 618年中大促 ,全场6折起!限量周边8件套!
- 企业微信工作台集成CAS实现单点登录
- 汇编实验:屏幕窗口程序
- 树莓派【树莓派关机命令,putty下载与远程控制树莓派,vnc控制树莓派(还没写完)】
- (转载)书蕴——基于书评的人工智能推荐系统
- C++ pair的常见用法(详细)