数据类型与变量(Python学习笔记01)
数据类型与变量
Python 中的主要数据类型有 int(整数)/float(浮点数)、字符串、布尔值、None、列表、元组、字典、集合等。
None
每个语言都有一个专门的词来表示空,例如 JavaScript 中的 null, MySQL 中也是用 null 表示空,Python 中使用 None 表示空对象,注意它与空字符串、数值 0 是不同的:
当我们在计算机系统中安装了Python, 这个 None 对象就自动生成了, 它在内存中的地址 (就是一串十进制的数字)就不再变化了,所以判断一个对象是否为 None,通常用 is, 而不是 == 来判断:
Bool布尔值
Python 中使用 True 和 False 来表示布尔值,注意首字母大写,即判断 Python 对象、返回值、表达式真假的一组特殊数据类型。通常数值 1 和 0 也有同样的作用。任何非零数值的布尔值都是True, 0 的布尔值是 False。 非空字符串的布尔值是 True, 空字符串的布尔值为 False。以此类推,空列表、空元组、空字典、空集合的布尔值为False,以上非空数据类型的布尔值为 True, None 的布尔值为 False.
Python 内置方法 bool 可以用来判断对象的布尔值:
保留字与标识符
保留字,又称为关键字,每种语言都有自己的一套预先保留的的特殊标识符,Python 也不例外,它自带的 keyword 模块可以查看全部关键字。在 Python3 交互式命令行中执行如下命令,引入 keyword模块就可以查看Python中的关键字:
这些保留字是需要配合其它程序语句共同使用,然后在这个过程中发挥他们各自的作用。例如 def 关键字用来创建函数;for 定义循环语句;and表示“与”;lambda生成匿名函数;return 定义函数的返回值,等等。
在Python中一起皆对象。标识符就是这些对象的代号,例如s=’hello world’, s 就是一个标识符,它是自定义变量,变量值是一个字符串。标识符通常定义是计算机语言中允许用作名字的有效字符串集合。它往往被用作变量、函数、类的名称。在Python中设置标识符(定义变量名)需要遵循一定的规则。
有两类不能用作标识符(变量名):
1. 保留字,又称关键字(其实就是特殊标识符),例如:False, True, with, if 等,他们都是Python保留的标识符,也就是指其它命名都不能使用这些保留的标识符。如果使用了他们将会出现语法错误(SyntaxError异常)。
2. 内置方法名称。它们是Python提前定义好的一些模块,这些模块可以随时被程序调用。所以为了避免冲突,尽量也不要使用这些内建模块名作为自定义的标识符。比如:int、len、max等等,注意这些名字如果被当作自定义变量名,并不会报错,但是导致对应的内置方法失效。
内置函数(方法)
函数在一些情况下又被称作方法,例如在类中。Python内置了大量很好的函数,这些函数分别支持一些基本的功能。可以通过在Python 交互式解释器中执行help()来获取这些内置函数的帮助,例如我们希望查看len()函数的作用:
变量
编程语言中为了能够更好的处理数据,都需要使用一些变量。变量基本上就是代表(或是引用某值的名字)。Python语言的变量可以是各种不同的数据类型,使用变量的时候不需要声明,Python解释器会自动判断数据类型。使用
type(变量) 可以查看该变量的类型。
在Python3 交互式命令行中执行如下命令:
在上面的操作中,用a代表了整数3,这个过程被称为“赋值”,也就是说整数3被赋值给了变量a, 而且a的类型也被定义为了整型。同样的,把字符串shiyanlou赋值给了变量b,那么以后就可以直接在表达式中使用变量b了。
变量命名规则
变量的命名属于标识符命名的一种。因此变量命名也不能使用保留字和内置函数名,除此之外还遵循一些其它规则。
变量命名一般有两种方式:驼峰命名法和下划线命名法。
驼峰命名法具体分为两种:
1. 小驼峰:第一个单词首字母小写,后面其它单词首字母大写。比如:firstName、myLastName等等。
2. 大驼峰:每个单词的第一个字母都大写。比如:FirstName、MyLastName等等。
下划线命名法需要注意以下几点:
1. 第一个字符必须是字母表中的字母(大写或小写)或者一个下划线('_')。
2. 命名的其它部分可以由字母(大写或小写)、下划线('_')或数字(0-9)组成。一般而言,单词与单词之间采用下划线分割开。
3. 命名区分大小写。比如:my_name与My_Name是两个不同的变量名。
因此,符合下划线命名法的例子有:i、A、my_name、a1_b2_c3、My_Name、__first_name等等。
不符合下划线命名法的例子有:2、my name、first-name等等。
不管是哪一种命名法都需要注意,命名的时候要做到词达其义,变量的命名就能够很方便的表明它的用途或是含义,增加代码的可读性。
一般而言,变量的命名风格可以根据个人习惯或是喜好选择驼峰命名法或是下划线命名法。但是 Python 官方推荐使用的是下划线命名法,下划线命名法相对而言会更加方便理解。另外,团队协作开发时也许也会规定使用哪一类变量命名方法,以使代码风格更加统一。
变量声明与赋值
Python 中的变量赋值不需要类型声明。每个变量在内存中创建,都包括变量的标识,名称和数据这些信息。每个变量在使用前都必须赋值,变量赋值以后该变量才会被创建。等号 = 用来给变量赋值。等号运算符左边是一个变量名, 右边是存储在变量中的值。
如:
两种特殊的赋值格式:
使用变量及打印
Python 3中,包括一下几种基本数据类型,本节打印变量中会用到其中的一些数据类型:
1. 整数:例如 100,-200,0等
2. 布尔值:True或False
3. 浮点数:小数,例如1.5,2.5
4. None: 空值,注意与0是不同额,可以理解为未定义的值。
Python 可以处理整数,包括负整数,在程序中的表示方法和数学上的写法一模一样,例如:1、1024、-96、0 等等。
浮点数也就是小数,之所以称为浮点数,是因为按照科学记数法表示时,一个浮点数的小数点位置是可变的,例如 123.4 和 1.234 x 100 是完全相等的。浮点数可以用数学写法,如1.23,3.1415926,-9.18,等等。对于很大或很小的浮点数,可以使用科学计数法表示,把 10 用 e 替代,1.2 乘以 10 的 9 次方就是 1.23e9,或者 12.3e8,0.000012 可以写成 1.2e-5,等等。
数据类型与变量(Python学习笔记01)的更多相关文章
- Python 学习笔记01
print:直接输出 type,求类型 数据类型:字符串,整型,浮点型,Bool型 note01.py # python learning note 01 print('Hello w ...
- 【python学习笔记01】python的数据类型
python的基本数据类型 整型 int 浮点型 float 真值 bool 字符串 str 列表 list #[1,2,3] 元组 tuple #(1,2,3) 字典 dict ...
- python学习笔记01 --------------hello world 与变量。
1.第一个程序: print('hello world') 输出结果: hello world 2.变量 2.1 变量的作用: 把程序运算的中间结果临时存到内存里,以备后面的代码继续调用. 2.2 变 ...
- Python 学习笔记01篇
编程基础很零碎 看了路飞学城的讲解视频,整体课程列表排列很清晰,每个视频都在十几分钟到二十几分钟之间,适合零碎化的的学习 第一章和第二章的前半部分可以较轻松地入门
- python学习笔记01:安装python
下载python: 从从https://www.python.org/downloads/下载python,根据操作系统的不同,选择不同的版本下载.注意:linux系统大多预装了python,可以直接 ...
- 【9-15】python学习笔记01
使用#开启行注释: 命令行:使用ctrl+d 退出
- Python学习笔记 (2.1)标准数据类型之Number(数字)
Python3中,数字分为四种——int,float,bool,complex int(整型) 和数学上的整数表示没啥区别,没有大小限制(多棒啊,不用写整数高精了),可正可负.还可表示16进制,以 0 ...
- (转)Python学习笔记(1)__name__变量
Python使用缩进对齐组织代码的执行,所有没有缩进的代码,都会在载入时自动执行.每个文件(模块)都可以任意写一些没有缩进的代码,并在载入时自动执行.为了区分 主执行代码和被调用文件,Python引入 ...
- OpenCV之Python学习笔记
OpenCV之Python学习笔记 直都在用Python+OpenCV做一些算法的原型.本来想留下发布一些文章的,可是整理一下就有点无奈了,都是写零散不成系统的小片段.现在看 到一本国外的新书< ...
随机推荐
- luogu 3796 【模板】AC自动机(加强版)
我太菜了 棒神%%% #include<iostream> #include<cstdio> #include<cmath> #include<cstdlib ...
- Fy's dota2
Fy 觉得自己玩 cf,lol 这种高端游戏已经够厉害了,于 是他决定去玩 dota2.结果 fy 的鼠标右键坏了,所以他就等 到 2250 买了把闪烁匕首,用跳刀前进,准备去送泉水.但 是 fy 一 ...
- bzoj3550
费用流+线性规划 搞了很长时间... 我们可以设立式子,a[1]+a[2]+a[3]+...+a[n]<=k , ... , a[2 * n + 1]+ ... +a[3*n]<=k a是 ...
- java网络编程TCP
图片来自网络 [服务端] import java.io.IOException; import java.io.InputStream; import java.io.OutputStream; im ...
- IBatis异常: Cannot find class: VARCHAR
今天再项目里添加新功能时,突然爆出 org.springframework.beans.factory.BeanCreationException: Error creating bean with ...
- Linux必知必会的目录结构
1.目录结构 /bin 二进制文件 命令 /sbin 超级命令 只有root用户可以使用 /boot 系统的引导文件 系统内核 /dev 设备文件 光盘 硬盘分区 /etc 系统配置文件 /home ...
- Atlantis(坐标离散化)
http://poj.org/problem?id=1151 题意:给出矩形的左上角坐标和右下角坐标(坐标的y轴是向下的),求出矩形面积的并.. 今天好困啊..迷迷糊糊的听会神给讲了讲,敲完之后调试了 ...
- [Swift通天遁地]五、高级扩展-(11)图像加载Loading动画效果的自定义和缓存
★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★➤微信公众号:山青咏芝(shanqingyongzhi)➤博客园地址:山青咏芝(https://www.cnblogs. ...
- 普通平衡树代码。。。Treap
应一些人之邀...发一篇代码 #include <iostream> #include <cstdio> #include <cstdlib> #include & ...
- day01_12/11/2016_Spring入门PPT
s1 s2 s3 s4 s5 s6 s7 s8 IOC1 IOC2 入门编写1 入门编写2 入门编写3 入门编写4---心得