本节介绍在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. nginx+python+fastcgi环境配置(flup版本)

    昨天花了一整天的时间研究搭建了nginx+python+fastcgi环境,并测试没问题,由于是第一次,并且参考了网上很多东西,网上也有很多,但还是把自己的过程记录下. 主要感谢这位兄弟的文章给了我很 ...

  2. hdu1695 GCD2 容斥原理 求x属于[1,b]与y属于[1,d],gcd(x,y)=k的对数。(5,7)与(7,5)看作同一对。

    GCD Time Limit: / MS (Java/Others) Memory Limit: / K (Java/Others) Total Submission(s): Accepted Sub ...

  3. AtCoder Regular Contest 070 D - No Need 想法:利用单调性二分+bitset优化

    /** 题目:D - No Need 链接:http://arc070.contest.atcoder.jp/tasks/arc070_b 题意:给出N个数,从中选出一个子集,若子集和大于等于K,则这 ...

  4. Vsphere日记01.ESXi5.5.install

    Vsphere ESXi 5.5 install ESXI 5.5 安装环境需求 1.CPU需求 1.1)Interl CPU 必须支持VT-X技术,且在BIOS中开启.I 系列CPU.exon 系列 ...

  5. Python 双向链表 快速排序

    1.创建链表: from random import randint class DLinkedNode(object): def __init__(self, data=None, pre=None ...

  6. linux下Java运行时so文件的附加

    将路径加入至 etc/ld.so.conf 中

  7. 误: Apache shutdown unexpectedly解决办法

    from:http://www.wopus.org/wordpress-basic/getting-started/2536.htmlXAMPP错  2015年10月20日15:58:19 新手上路发 ...

  8. jmeter安装启动报错:Not able to find Java executable or version. Please check your Java installation

    1.xp安装jmeter后启动,出现下面错误,找了很多方法试了,都没有用: 2.最后找到一个方法解决了[感谢无名大神],在环境变量PATH中添加:%SystemRoot%/system32;%Syst ...

  9. (八)solr7实现搜索框的自动提示并统计词频

     solr7实现搜索框的自动提示并统计词频 1:用solr 的suggest组件,统计词频相对麻烦. 2:用TermsComponent,自带词频统计功能. Terms组件提供访问索引项的字段和每个词 ...

  10. getParameterMap的使用

    就是前端提交到Servlet或者Action里面的参数Map哈,如果你是以表单提交,那么request.getParameterMap()中将包含你表单里面所有input标签的数据,以其name为ke ...