Python学习 <一> Python基础

变量赋值

<1>赋值操作符 =
Python语言中,等号(=)是主要的赋值操作符。
<2>增量赋值x += 1 (不支持x++)
<3>多重赋值x = y = z = 1
<4>多元赋值 x, y = 1, 2

问0:如果x=1的话,那么x变量里面保存的就是数值1咯?
答:不不不,x里面保存的是1的地址,相当于x的变量是贴到1这个地址上的。

问1:为什么有变量,为什么要有变量赋值?
答:我的想法是,如果数字1存储在 内存地址 0x7FFFFF0000 中,如果每次都要写 0x7FFFFF0000 岂不是很麻烦 ,那么就简单一点我们起个变量名叫x 岂不美哉。

问2: 如何看待Python语言中,对象是通过引用传递的?
答:这个问题和问题0是差不多的,Python赋值语句会把对象值存储在变量名或者数据结构的元素中,赋值语句总是建立对象的引用值,而不是复制对象,因此Python变量更像是指针,而不是数据存储区域。

标识符

<1> 合法的Python标识符
第一个字符必须是字母或者下划线
剩下的字符可以是字母和数字或下划线
大小写敏感

<2>关键字
语言的标识符,保留字

<3>内建
不是保留字,但是不推荐使用

<4>.专用下划线标识符
_xxx 不用 "from module import *" 导入
xxx 系统定义名字
_xxx 类中的私有变量名

问3:如何看待Python中单下划线和双下划线的区别?
_name_:一种约定,Python内部的名字,用来与
用户自定义的名字区分开,防止冲突
_name:一种约定,用来指定变量私有
__name:解释器用_classname__name来代替这个名字用以区别和其他类相同的命名

想要更加详细的了解这两者的区别,请点击:Python中的下划线(译文)**

基本风格指南

问:什么是PEP8?
答:一种Python编码风格指导规范。

内存管理

  • 无需变量实现声明
  • 无需变量指定类型
  • 不用关心内存管理
  • 变量名会被回收
  • del 语句能够直接释放资源

<1>变量定义
变量在第一次被赋值的时会自动声明
<2>动态类型
解释器会根据语法和右侧的操作数来决定对象的类型
<3>内存分配
交给Python
<4>引用计数

  • 增加引用计数
x = 3
y = x
  • 减少引用计数
x = 3
y = x
x = 4
  • del语句
    会删除对象的一个引用
  • 垃圾收集
    垃圾收集器会寻找引用计数为0的对象。

问4:Python的垃圾回收机制是一种怎样的体验?
答:
引用计数为主,标记-清除和分带为辅
引用计数: 引用计数为0,内存释放。
标记-清除 容器对象 引用循环 定时回收
分代收集 划分三代

想要知道Python垃圾回收机制的详细情况 请点击:深入分析 Python 的垃圾回收机制**

问5:如何评价引用计数?
答:
引用计数为0时,该对象生命就结束了。
引用计数机制的优点:
1、简单
2、实时性:一旦没有引用,内存就直接释放了。不用像其他机制等到特定时机。实时性还带来一个好处:处理回收内存的时间分摊到了平时。
引用计数机制的缺点:
1、维护引用计数消耗资源
2、循环引用
举个例子

1 list1 = []
2 list2 = []
3 list1.append(list2)
4 list2.append(list1)

list1与list2相互引用,如果不存在其他对象对它们的引用,list1与list2的引用计数也仍然为1,所占用的内存永远无法被回收,这将是致命的。
对于如今的强大硬件,缺点1尚可接受,但是循环引用导致内存泄露,注定python还将引入新的回收机制。
所以说就有了 标记-清除 和 分代收集

标记-清除 主要是要清除哪种情况呢?
答:“标记-清除”是为了解决循环引用的问题。
就是上面那种情况.

分代收集 主要是为了解决哪种情况呢?
答: 将系统中的所有内存块根据其存活时间划分为不同的集合,每一个集合就成为一个“代”,垃圾收集的频率随着“代”的存活时间的增大而减小。也就是说,活得越长的对象,就越不可能是垃圾,就应该减少对它的垃圾收集频率。

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 159,458评论 4 363
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 67,454评论 1 294
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 109,171评论 0 243
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 44,062评论 0 207
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 52,440评论 3 287
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 40,661评论 1 219
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 31,906评论 2 313
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 30,609评论 0 200
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 34,379评论 1 246
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 30,600评论 2 246
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 32,085评论 1 261
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 28,409评论 2 254
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 33,072评论 3 237
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 26,088评论 0 8
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 26,860评论 0 195
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 35,704评论 2 276
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 35,608评论 2 270

推荐阅读更多精彩内容

  • http://python.jobbole.com/85231/ 关于专业技能写完项目接着写写一名3年工作经验的J...
    燕京博士阅读 7,484评论 1 118
  • 从三月份找实习到现在,面了一些公司,挂了不少,但最终还是拿到小米、百度、阿里、京东、新浪、CVTE、乐视家的研发岗...
    时芥蓝阅读 42,015评论 11 349
  • 马上就要开始新的一天了。今天晚上是怎么了呢?是因为吃阿莫西林和牛黄解毒片的时候,用百合泡的水带服的缘故么?为什么刚...
    江河入海阅读 229评论 0 0
  • 思维导图介绍 什么是思维导图? 思维导图又叫心智图,是表达发射性思维的有效的图形思维工具 ,它简单却又极其有效,是...
    认知成长笔记阅读 1,619评论 0 1
  • 2
    再见柯西阅读 154评论 0 0