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中与用户交互)相关推荐

  1. Nginx内存管理详解

    目录: 1.Nginx内存管理介绍 2.Nginx内存池的逻辑结构 3.Nginx内存池的基本数据结构 4.内存池基本操作介绍 5.内存池管理源码详解 6.内存池使用源码详解 7.小结 1.Nginx ...

  2. 服务器经常崩溃??让我们来看看简单的内存知识:C语言——内存管理

    学习重点 : 1.全面掌握变量的特性,了解内存管理的概念. 2.全面掌握函数的使用. 局部变量与全局变量: 局部变量:就是在函数内部定义的变量.局部变量只在本函数内有效,也就是只能在本函数内使用它. ...

  3. C++---动态内存管理

    C/C++内存分布 栈:存储非静态局部变量.函数参数.返回值. 内存映射段:动态库. 堆:程序运行时动态内存分配. 数据段:存储全局变量.静态数据. 代码段:可执行代码,只读常量. C语言中动态内存管 ...

  4. 尽力全面的C++内存管理

    尽力全面的C++内存管理 前言 0. 管理内存的理由 1. Windows内存管理策略 附:物理内存 与 虚拟内存 2. Linux内存管理策略 附:brk() 和 mmap() 3. 内存对齐 3. ...

  5. 笔记②:牛客校招冲刺集训营---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 友元 友 ...

  6. Block 本质、实现原理、内存管理、循环引用、__block等

    一.Block介绍 1.1概念: 将函数及其执行上下文封装起来的对象 底层用struct实现 1.2block实现原理: a .新建项目 代码放入file.m中 b.打开终端cd到项目目录下 c.敲c ...

  7. Flink核心篇,四大基石、容错机制、广播、反压、序列化、内存管理、资源管理...

    Flink基础篇,基本概念.设计理念.架构模型.编程模型.常用算子 大纲: 1.Flink的四大基石包含哪些? 2.讲一下Flink的Time概念? 3.介绍下Flink窗口,以及划分机制? 4.介绍 ...

  8. BEP 7:CUDA外部内存管理插件(下)

    BEP 7:CUDA外部内存管理插件(下) Numba依赖 向库中添加EMM插件的实现自然会使Numba成为库的依赖项,而以前可能没有.为了使依赖关系可选,如果需要的话,可以有条件地实例化并注册EMM ...

  9. C++内存管理学习堆和栈

    来源:http://c.chinaitlab.com/basic/936306_2.html 一 C++内存管理 1.内存分配方式 在讲解内存分配之前,首先,要了解程序在内存中都有什么区域,然后再详细 ...

最新文章

  1. LeetCode简单题之二叉搜索树的范围和
  2. nutch如何发布插件
  3. python 线程类 threading.Thread.join() 方法 (自闭,不让别人进来了)
  4. Codeforces Round #743 (Div. 2) D. Xor of 3 模拟 + 构造
  5. Larbin源代码分析[6]LARBIN中线程处理类
  6. [React]你有用过哪些React的表单库吗?说说它们的优缺点
  7. 微信开发SDK,Jeewx-Api 1.3.1 版本发布
  8. 基于MFC框架下OpenGL的exe可移植
  9. 圆形缓冲区(循环buffer)实现
  10. 【万字长文】整理一份全套的机器学习资料!
  11. ruby中调用dll的诡异错误
  12. 【Scratch 3.0游戏】—— 乒乓弹球游戏
  13. 如何在CSDN上上传资源
  14. www.ku6d.com采集目标
  15. 618年中大促 ,全场6折起!限量周边8件套!
  16. 企业微信工作台集成CAS实现单点登录
  17. 汇编实验:屏幕窗口程序
  18. 树莓派【树莓派关机命令,putty下载与远程控制树莓派,vnc控制树莓派(还没写完)】
  19. (转载)书蕴——基于书评的人工智能推荐系统
  20. C++ pair的常见用法(详细)

热门文章

  1. OpenYurt入门-在树莓派上玩转OpenYurt
  2. 你以为的并不是你所以为的,《传说之下》Undertale打破游戏的墙
  3. 地平线:黎明时分中的云渲染技术
  4. pyecharts第二节、饼图
  5. JSP和Servlet的六种中文乱码处理方法
  6. pl sql developer中如何调试存储过程以及调试包中创建的存储过程
  7. linux 下修改最大文件数
  8. Nginx的几个常用配置和技巧
  9. 配置启动MySQL的Docker容器
  10. 代码质量的几点新思考