Python第三天(未完)

一、拾遗

1、在Python中所有的数据都是围绕对象这个概念来构建的。

  对象包含一些基本的数据类型,如:数字、字符串、列表、元组、字典等,所以说程序中存储的所有数据都是对象

每一个对象都具有以下特点:

  例如:a = 1

  一个身份(用id()命令查看,表示这个对象在内存中的地址)

  一个类型(用type()命令查看这个对象的类型)

  一个值  (通过变量名来查看。通过变量名引用的值,本例就是1)

2、字符串是可以被while和for循环遍历的。它们是根据字符串的索引遍历的。

3、工厂函数的概念

定义一个数据类型,如:x = 1,实际上调用的是x = int(1),说明凡是整型都是调用int()方法得出的结果,也就是说一个int()方法批量生产了许多许多整型,其它数据类型也是如此,这就是工厂函数的概念。

4、可变数据类型与不可变数据类型

定义一个数据类型,就创建了它的id、type、value。

     若id变了,则等于创建了另外一个数据类型了,与原来的数据类型没有关系了。所以id不能变

     若type变了,则相当于内存又开辟了一块空间存了一个值进去,与原来的数据类型没有关系了,所以type也不能变

  唯一可变的就是value了。所以判断这个数据类型可变不可变就看value了

    所以得出结论:区分一个数据类型是可变还是不可变数据类型,必须在id和type不变的情况下,只需要看它的value就可以了

关于可变打个通俗易懂的比方——租房子:

  房东A出租自己的房子,租客到期走后,下一个租客就会住进来。房子和房东A不变,只是租客变,这所房子依然是房东A的,这就好比是python的可变数据类型。房子和房东相当于id和type,租客就相当于value,只有租客变化,这就是可变数据类型

例:更改整型的值来查看整型是否是可变类型

经上图所示,更改整型的值后,再对比之前的id都发现改变了,可见整型不是可变类型。

以上观点适用于python的所有数据类型

5、列表

(1)定义

  例:

  l = [ ]

  这就是列表,里面可以存放多个以逗号分隔开的任意python的数据类型的值,这些值在列表中称为元素,列表是可变数据类型

(2)列表的取值:

    列表的取值与字符串的取值是一样的,也是按照索引去取值。

  例1:取出下面列表中第2个元素

   l = ["xiaobai",18,"haha",[1,2,3],"hello"]

   print(l[2])  # 中括号中加上索引值,就可以取出列表中的元素了。

  例2:取出下面列表中元素[1,2,3]中的2个元素

   l = ["xiaobai",18,"haha",[1,2,3],"hello"]

   print(l[3][1])  # 先找到[1,2,3]所在的索引位置,再取出其第2个元素。

(3)列表的类型

  

  综上图所示证明:列表属于可变数据类型

  

二、变量赋值操作

1、身份比较、类型比较、值比较:is

例:

2、变量的赋值操作:没有返回值

x = 1     # 这就是变量的赋值操作

print(x=1)  # 若直接打印则会报错:TypeError: ‘x‘ is an invalid keyword argument for this function

3、链式赋值

例:

x = y = z = a = b = 10print(x,y,z,a,b)

打印结果为:10 10 10 10 10

4、多元赋值

时间: 2024-10-14 22:17:04

Python第三天(未完)的相关文章

python 单步调试初探(未完待续)

pdb 调试: import pdb pdb.set_trace() pudb 调试: http://python.jobbole.com/82638/

[daily][optimize] 去吃面 (python类型转换函数引申的性能优化)(未完待续)

前天,20161012,到望京面试.第四个职位,终于进了二面.好么,结果人力安排完了面试时间竟然没有通知我,也没有收到短信邀请.如果没有短信邀请门口的保安大哥是不让我进去大厦的.然后,我在11号接到了面试官直接打来的电话,问我为啥还没到,我说没人通知我我不知道呀.结果我就直接被他邀请去以访客的身份参加面试了.不知道人力的姑娘是不是认识我,且和我有仇,终于可以报复了... 然后,我终于如约到了,面试官带着我去前台登记.前台的妹子更萌...认为我是面试官,面试官是才是来面试的.我气质真的那么合吗?

Python核心编程(第二版) 第二章习题答案 未完待续

2-2.程序输出.阅读下面的Python脚本.#!/usr/bin/env python1 + 2 * 4(a)你认为这段脚本是用来做什么的?(b)你认为这段脚本会输出什么?(c)输入以上代码,并保存为脚本,然后运行它,它所做的与你的预期一样吗?为什么一样/不一样?(d)这段代码单独执行和在交互解释器中执行有何不同?试一下,然后写出结果.(e)如何改进这个脚本,以便它能和你想象的一样工作?答:(a)这段脚本是用来计算表达式的值(b)脚本会输出9(c)保存为脚本,运行后没有输出.和自己预期不一样.

【蓝鸥Unity开发基础三】课时3 Terrain地形系统【未完】

[蓝鸥Unity开发基础三]课时3  Terrain地形系统[未完] 推荐视频讲师博客:http://11165165.blog.51cto.com/ 一.Terrain地形系统 Terrain地形系统 资源包的导入 场景漫游 立方体是:长宽高1m 二.Terrain地形系统 1.Terrain组件:提升地形/沉降地形工具 点击左键-- 提升地形 点击左键+Shift--沉降地形 选择笔刷的形状.笔刷的大小,笔刷的硬度--绘制地形 2.Terrain:平坦地形工具:设置地形目标高度 平滑地形工具

Python的Argparse模块是什么?(未完)

        近日在阅读代码的过程中遇到了Argparse模块,记得前段时间已经看了,可是过了两周现在又忘了, 看来写代码一定要钻研到底搞清楚其中原委才行,本文主要参考Python3.6系列官方文档的Argparse模块的教程. 注意:还有两个模块与Argparse功能相似,getopt和optparse. argparse基于optparse,因此在使用方面非常相似,但是不推荐使用optparse,官方文档更推荐argparse. 1.Argparse的作用 举一个小例子,在Linux系统中

Python开发 標準內建方法 (未完代補)

abs(number)  絕對值  The abs() method takes a single argument: num - number whose absolute value is to be returned. The number can be: integer floating number complex number any(iterable)   The any() method returns True if any element of an iterable is

把握linux内核设计思想系列(未完待续......)

[版权声明:尊重原创,转载请保留出处:blog.csdn.net/shallnet,文章仅供学习交流,请勿用于商业用途] 把握linux内核设计思想(一):系统调用 把握linux内核设计思想(二):硬中断及中断处理 把握linux内核设计思想(三):下半部机制之软中断 把握linux内核设计思想(四):下半部机制之tasklet 把握linux内核设计思想(五):下半部机制之工作队列及几种机制的选择 把握linux内核设计思想(六):内核时钟中断 把握linux内核设计思想(七):内核定时器和

细菌觅食优化算法:理论基础,分析,以及应用(未完)

原作者:Swagatam Das,Arijit Biswas,Sambarta Dasgupta,和Ajith Abraham  [摘 要]细菌觅食优化算法(Bacterial foraging optimization algorithm[BFOA])已经被分布式优化和控制的同行们当作一种全局性的优化算法接受.BFOA是由大肠杆菌的群体觅食行为所启发而总结出来 的.BFOA已经吸引了足够多的研究者的注意,由于它出现在解决真实世界中一些应用领域上优化问题的高效性.E.coli 的群体策略的生物基

Python进阶(三十四)-Python3多线程解读

Python进阶(三十四)-Python3多线程解读 线程讲解 ??多线程类似于同时执行多个不同程序,多线程运行有如下优点: 使用线程可以把占据长时间的程序中的任务放到后台去处理. 用户界面可以更加吸引人,这样比如用户点击了一个按钮去触发某些事件的处理,可以弹出一个进度条来显示处理的进度. 程序的运行速度可能加快. 在一些等待的任务实现上如用户输入.文件读写和网络收发数据等,线程就比较有用了.在这种情况下我们可以释放一些珍贵的资源如内存占用等等. ??线程在执行过程中与进程还是有区别的.每个独立

git个人使用总结 —— idea命令行、撤销commit (未完待续)

近期在使用git,最开始在idea界面操作,后来要求用命令行.刚开始还不是很习惯,感觉很麻烦,用了几天后感觉爽极了! 其实git的命令也不是很多,熟悉一段时间就差不多能顺利使用了.使用过程中遇到了各种各样的问题,有些小问题就在这里集中总结一下. 1.idea命令行.git安装后就自带终端git bash,使用起来很方便.但是用idea开发,开发后还要在相应文件夹下打开git bash很麻烦.其实idea也带有终端terminal,在最下方可以找到,在这里就可以执行命令.但是如果是默认方式安装的g