本节介绍在Python语法中不同的变量数据类型。

    (1)基本数据类型:

>>> a=10;
>>> b=10.0;
>>> c=True;
>>> d="我在学习Python";
>>> print(a,b,c,d)
10 10.0 True 我在学习Python
>>> print("",type(a),"\n",type(b),"\n",type(c),"\n",type(d),"\n"); #内置函数type()可以查询变量的类型
<class 'int' at 0x58C569A8>
<class 'float' at 0x58C54AE0>
<class 'bool' at 0x58C4A0D8>
<class 'str' at 0x58C5CBB0>

Python 中的变量赋值不需要类型声明;Python 中的基本数据类型有整型、浮点型、布尔型、字符串型。

Python支持多个变量同时赋值:

>>> a=b=c=8j;
>>> print(a,b,c)
8j 8j 8j
>>> print(type(a));
<class 'complex' at 0x58C4E418>
>>> a,b,c=1/2,5.6/2.8,4>5;
>>> print("",type(a),"\n",type(b),"\n",type(c))
<class 'float' at 0x58C54AE0>
<class 'float' at 0x58C54AE0>
<class 'bool' at 0x58C4A0D8>

每个变量在内存中创建,都包括变量的标识,名称和数据这些信息。每个变量在使用前都必须赋值,变量赋值以后该变量才会被创建。等号(=)用来给变量赋值。等号(=)运算符左边是一个变量名,等号(=)运算符右边是存储在变量中的值。

    (2)标准数据类型:

Python有五个标准的数据类型:
1.Numbers(数字)
2.String(字符串)
3.List(列表)
4.Tuple(元组)
5.Dictionary(字典)

1)Python数字:(数字数据类型用于存储数值)

>>> a=10;
>>> b=10.0;
>>> c=10j;
>>> print("",type(a),"\n",type(b),"\n",type(c));
<class 'int' at 0x58C569A8>
<class 'float' at 0x58C54AE0>
<class 'complex' at 0x58C4E418>
>>> d=1234567891011121314
>>> print(type(d))
<class 'int' at 0x58C569A8>

Python数字有三种类型整型、浮点型和复数类型。整型是不需要限制位数的。

可以用complex构造复数:

>>> c=complex(4,6)
>>> print(c)
(4+6j)
>>> d=4+6j
>>> print(d)
(4+6j)

用del回收变量:

>>> a=10
>>> a
10
>>> del a
>>> a
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
NameError: name 'a' is not defined

2)字符串:(字符串或串(String)是由数字、字母、下划线组成的一串字符。)

它是编程语言中表示文本的数据类型。

python的字串列表有2种取值顺序:

  1.从左到右索引默认0开始的,最大范围是字符串长度少1;

  2.从右到左索引默认-1开始的,最大范围是字符串开头。

>>> a="I love Python!"
>>> a[2:6]
'love'
>>> a[5:1:-1]
'evol'
>>> print(a+" Hello World!") //输出拼接的字符串
I love Python! Hello World!
>>> print(a*2) //输出两次字符串
I love Python!I love Python!
>>> print(a[13:0:-1])
!nohtyP evol_ // _代表空格

上述的方法是不能直接实现倒序输出字符串的,下面是一种方法:

sunjimeng@SJM:~/文档$ cat text.py
a="上海自来水来自海上";
print(a[8:0:-1]);
for i in range(9):
print(a[8-i]);
sunjimeng@SJM:~/文档$ python3.5 text.py
上海自来水来自海








3)列表:(列表可以完成大多数集合类的数据结构实现。它支持字符,数字,字符串甚至可以包含列表(所谓嵌套)。)

列表用[ ]标识。是python最通用的复合数据类型。

列表中的值得分割也可以用到变量[头下标:尾下标],就可以截取相应的列表,从左到右索引默认0开始的,从右到左索引默认-1开始,下标可以为空表示取到头或尾。

加号(+)是列表连接运算符,星号(*)是重复操作。

sunjimeng@SJM:~/文档$ python3.5
Python 3.5.2 (default, Jul 17 2016, 11:52:15)
[GCC 4.8.4] on linux
Type "help", "copyright", "credits" or "license" for more information.>>> normal_list=['字符串',123,4+8j,['列表里的列表',4/2]]
>>> tiny_list=['你好',122]
>>> print(normal_list) //1.输出完整的列表
['字符串', 123, (4+8j), ['列表', 2.0]]
>>> print(normal_list[3]) //2.输出指定的列表元素
['列表', 2.0]
>>> print(tiny_list*2) //3.输出两次指定结果
['你好', 122, '你好', 122]

4)元组(元组是另一个类似于List的数据类型)

元组用"()"标识。内部元素用逗号隔开。但是元组不能二次赋值,相当于只读列表。

>>> tuple=('静态列表',122,True)
>>> tiny_tuple=(4j,('你好',True),122)
>>> print(tiny_tuple[2])
122
>>> print(tuple)
('静态列表', 122, True)

元组与列表的对比:

>>> list=['字符串',122,5j]
>>> tuple=('你好',234,5/4)
>>> list
['字符串', 122, 5j]
>>> tuple
('你好', 234, 1.25)
>>> list[1]='xg'
>>> list
['字符串', 'xg', 5j]
>>> tuple[1]=True
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
TypeError: 'tuple' object does not support item assignment

list允许修改其中的元素,tuple不允许修改元素。list和tuple都相当于一个引用,他们是可以引用新的列表或元组的:

>>> print(tuple)
('静态列表', 122, True)
>>> list
['abcd', 786, 2.23, 'john', 70.2]
>>> list=["修改后的列表"]
>>> tuple=('修改后的元组',123)
>>> tuple
('修改后组', 123)

5)sequence 序列

sequence(序列)是一组有顺序的元素的集合 (严格的说,是对象的集合,但鉴于我们还没有引入“对象”概念,暂时说元素) 。

序列可以包含一个或多个元素,也可以没有任何元素。我们之前所说的基本数据类型,都可以作为序列的元素。元素还可以是另一个序列,以及我们以后要介绍的其他对象。

序列有两种:tuple(定值表; 也有翻译为元组)和list (表)。

6)元字典(除序列以外的最灵活的数据结构)

列表是有序的对象结合,字典是无序的对象集合。两者之间的区别在于:字典当中的元素是通过键来存取的,而不是通过偏移存取。

字典用"{}"标识。字典由索引(key)和它对应的值value组成:(键值对)

>>> sjm = {}
>>> sjm['age'] = 122
>>> sjm['name']='sunjimeng'
>>> sjm['ch_name']='孙继锰' //注意用单引号
>>> print(sjm)
{'age': 122, 'name': 'sunjimeng', 'ch_name': '孙继锰'}
>>> hhj={'name':'ningcaichen','age':18}
>>> hhj
{'age': 18, 'name': 'ningcaichen'}

    (3)数据类型转换:

有时候,我们需要对数据内置的类型进行转换,数据类型的转换,你只需要将数据类型作为函数名即可。

以下几个内置的函数可以执行数据类型之间的转换。这些函数返回一个新的对象,表示转换的值。

这些是老版本的Python里的类型转换函数,可能有些是不能用的。

Python学习进程(3)Python基本数据类型的更多相关文章

  1. python学习第九讲,python中的数据类型,字符串的使用与介绍

    目录 python学习第九讲,python中的数据类型,字符串的使用与介绍 一丶字符串 1.字符串的定义 2.字符串的常见操作 3.字符串操作 len count index操作 4.判断空白字符,判 ...

  2. python学习第五讲,python基础语法之函数语法,与Import导入模块.

    目录 python学习第五讲,python基础语法之函数语法,与Import导入模块. 一丶函数简介 1.函数语法定义 2.函数的调用 3.函数的文档注释 4.函数的参数 5.函数的形参跟实参 6.函 ...

  3. python学习第三讲,python基础语法之注释,算数运算符,变量.

    目录 python学习第三讲,python基础语法之注释,算数运算符,变量. 一丶python中的基础语法,注释,算数运算符,变量 1.python中的注释 2.python中的运算符. 3.pyth ...

  4. python学习第一讲,python简介

    目录 python学习第一讲,python简介 一丶python简介 1.解释型语言与编译型语言 2.python的特点 3.python的优缺点 二丶第一个python程序 1.python源程序概 ...

  5. Python学习教程(Python学习视频_Python学些路线):Day06 函数和模块的使用

    Python学习教程(Python学习视频_Python学些路线):函数和模块的使用 在讲解本章节的内容之前,我们先来研究一道数学题,请说出下面的方程有多少组正整数解. $$x_1 + x_2 + x ...

  6. python入门灵魂5问--python学习路线,python教程,python学哪些,python怎么学,python学到什么程度

    一.python入门简介 对于刚接触python编程或者想学习python自动化的人来说,基本都会有以下python入门灵魂5问--python学习路线,python教程,python学哪些,pyth ...

  7. Python学习笔记(二)——数据类型

    1.数据类型 Python有五个标准的数据类型: Numbers(数字) String(字符串) List(列表) Tuple(元组) Dictionary(字典) 2.Python数字类型 Pyth ...

  8. 我的Python学习之路 Python的输入输出与基本数据类型

    *** python中的变量不需要事先声明再使用,而可以直接来一个变量名,后面一个赋值,接着一个数据值,如 hw = "hello python",相当于Python能智能的根据你 ...

  9. Python学习笔记(三)数据类型

    在内存中存储的数据可以有多种类型,在Python中,能够直接处理的数据类型有以下几种: 数字(Numbers) 字符串(String) 列表(List) 元组(Tuple) 字典(Dictionary ...

随机推荐

  1. hud项目lcd调试

    lcd规格: 像素:480x280 bpp:16 pix_format:RGB565 在开发板终端中执行: ls /dev/fb0 -l ---> crw-rw----    1 root   ...

  2. 【Mac + Appium + Python3.6学习(三)】之IOS自动化测试环境配置

    在做这一节之前先配置我的另一篇文章所需要安装的前提准备条件:<[Mac + Appium学习(一)]之安装Appium环境前提准备> 一.安装IOS自动化测试环境 配置环境: Appium ...

  3. python 左移右移 2个数交换

    左移右移的能够使得数字*2或者/2 那*3怎么办,就左移一位然后再+ 经典面试题: 1.交换2个数,不用temp   a=10  b=12 1.1 a = a + b = 22 b = a - b = ...

  4. 关于Linq to Sql 中的left join 中defaultifempty的相关注意事项

    在使用Linq to Sql的时候,进行两个表的左连接的时候要注意defaultifempty的使用,这个函数本来的意思即是:如果为空则使用默认值代替,默认值为 NULL ,当然也可以使用defaul ...

  5. C字符串复制

    void mystrcpy(char *from, char *to) { for(; *from != '\0'; from++, to++) { *to = *from; } *to = '\0' ...

  6. 输入一个十进制数N,将它转换成R进制数输出(运用递归实现)

    #include<stdio.h> int cnt=0;                             //用来记录每个进制存放的位置 char num[20];   //用来存 ...

  7. httpclient 怎么带上登录成功后返回的cookie值访问下一页面

    我是只很菜很菜的小鸟.刚上班,有这个一个需求.要我抓取别的网站的数据.     我根据用户密码登录一个网站成功后,生成一个cookie值.我已经获取到了.然后要带上这个cookie值进行下一页面的访问 ...

  8. 通过w3c方式 读取xml内容

    /** * 通过w3c方式 读取xml内容 * @param lablenames 要读取的节点名称 * @param file_path_name 文件绝对路径 * @return */ publi ...

  9. JS中的加号+运算符详解

    加号+运算符 在 JavaScript 中,加法的规则其实很简单,只有两种情况: 把数字和数字相加 把字符串和字符串相加 所有其他类型的值都会被自动转换成这两种类型的值. 为了能够弄明白这种隐式转换是 ...

  10. hdu 1853 (费用流 拆点)

    // 给定一个有向图,必须用若干个环来覆盖整个图,要求这些覆盖的环的权值最小. 思路:原图每个点 u 拆为 u 和 u' ,从源点引容量为 1 费用为 0 的边到 u ,从 u' 引相同性质的边到汇点 ...