Python 入门之基本数据类型
为什么我要学习Python这门语言呢?其实很简单,我想拓展技术面的同时,尝试更多的方向,可能最后会不了了之,谁知道呢?有可能的话,我会向爬虫和数据分析这个方向走。所以也就开始了我的Python学习之旅。当然,前提是我的本职工作Java也要前进。
因为有Java的基础,所以入门Python还是比较简单的,但我我不想草草了事,所以,会刻意慢一点。说到Python开发环境的安装和工具的使用,我选择的就是Python3.6, 而目前的工具,因为在初期,所以选择了Python自带的IDLE
,那就来总结一下我这几天的学习情况吧!对了,我选择的教程就是Python基础教程3
。白天需要工作,所以也就是在下班的时候抽时间看一下书。
就像是Java中的8种基本数据类型一样,Python 中也有一些基本的数据类型,那今天就来说说 Python 中的基本的数据结构有哪些。
- 列表
- 元组
- 字符串
- 字典
其中前面3种统称为序列,为什么强行把前3类归在一起呢?因为它们有共同的操作。其中包括索引,切片,相加,相乘和成员检查(即 in 操作符)
。
一个个的分析,Python 中的索引从 0 开始递增
,而且可以使用 -1 定位到最后一个元素,依次向左递减
。切片就很高级了,就是可以访问固定索引范围内的值,比方说 s = 'hello' s[1:3] = 'el'
注意一点就行,索引值是含前不含后的。这在 Python 中很常见。切片还有很多比较秀的操作,类如 s[-3:-1] = 'll' (注意刚刚说过的含前不含后)
,s[:] = 'hello' s[1:] = 'ello' s[:3] = 'hel'
,这些比较常用的操作吧,还有切片支持指定步长,默认步长为 1 s[::2] = 'hlo'
其余的我也不说,根本记不住好吧!学的时候有个印象就好。序列相加就是直接加呀一个例子:[1,2,3]+[6] = [1,2,3,6];
乘法类似,'h'*3 = 'hhh'
成员资格就是值在不在序列中使用in
来进行判断。举例s = ['A','B','C']; 'A' in s = True
以上只是对Python序列的操作做一个简单的说明。还有一些常用的方法,求长度,最大值,最小值分别使用len() max() min()
理解起来应该不存在问题。序列共同的操作说完之后,我们来看看每个都如何使用。
首先说什么是列表,列表就是将数据使用[ ]
括起来,这就是是列表了,而元组就是将数据使用( )
括起来,字符串使用的是' ' or " "
这样一总结,就感觉清爽了很多嘛。要问为什么会使用这些符号,人家就是这样定义的,你能咋滴!具体的使用我不想说太多,不然有种在抄书的感觉啊!要知道,列表有很多的内置方法可以是使用,记不住没关系,可以使用命令dir(list)
这样就得到了列表中的所有方法,知道方法不会用方法啊,还有一个命令就是help(list.methodName)
这样就可以得到解释了。然而这是英文的,还是不懂,那就百度去吧。即使现在说了有哪些方法,我相信,不使用的话,还是会忘的一干二净。所以我就不多说了。总之要记住,有很多很多的方法你想到没想到的可能都已经存在了!
元组和字符串是不可变的,而元组和列表又很相似,列表可变,元组不可变,这是区别,而且元组使用的特别少,但是还是有用武之地的,目前没见到而已,还需要修炼修炼。这就是一个元组(1,2,3)
注意元组使用的是括号,中间逗号隔开,但是有一个要注意,若是元组只有一个元素,那么一定要加一个逗号,像这样1, or (1,)
不然谁知道你是在表达数字 1 还是元组(1,)呢 。
字符串我们应该很熟悉了,说一点,关于字符串的格式问题,我们可以使用 %s
来设置格式,形如这样 name = 'David'; print('Hello , %s' %name )
这样就可以把 name 这个字符串填充到需要填充的字符串中。%s
称为转换说明符,我理解的就是占坑。还有一种是使用 format 方法'{0},{2} and {1}'.format('frist','second','third') 结果: first,third and second
注意,这就是一种有预谋的占坑了,可以指定位置,当然也可以不指定,那就是按照顺序来。字符串的方法更是多到令人发指的地步,没关系,那就一点点的使用吧,我写方法名你们来猜吧 center find join lower upper split title strip lstrip rstrip translate isspace isdigit isupper ...
简直了,你们看着办吧!
上面介绍的都可以使用索引来操作的数据类型,但是总是需要以一种数据类型来描述映射关系的吧,于是字典就应运而生了!也就是我们常说的 key-value 键值对。那字典是怎么表示的呢?这样phonebook = {'David':'1234','Lucy':'9876'}
你看,就是一个大括号+冒号+逗号的组合就创建了一个字典,这符号真是多呀,回忆一下列表用[ ]
,元组用( )
,字符串用' ' or " "
,字典用{ }
所以说要善于总结啊,这样记得才能牢呀。字典有个类叫dict
,干嘛用的,就是创建字典用的,类似的列表是list
元组是tuple
。翻来覆去的比较,总会记得住,理解的清楚。字典也有些基本的操作,又到了看方法名的时候len(dict) || dict[key] || dict[key] = value || del dict[key] || key in dict || dict-表示一个字典类型的变量,key-字典的键,value-为键赋的值
另外要注意的是,字典的键值必须是不可变的。这在 Java 整理的部分已经说过了 ~
还有要介绍一下字典的相关的方法,真的好烦,不想写了。就简单一点 dir(dict)
搞定,方法名都可以看到了。方法的使用 help(dict.methodName)
也搞定。感觉用字典来格式化字符串这个功能很有用,单独说一下,使用方法 format_map(dict)
就可以将字典中的值填充到字符串中,感觉很给力,举例:
data = {'a':'I','b':'You'}
'{a} love {b}'.format_map(data) = 'I love You'
就是这样,变相的表白啊。
总结一下,目前只是了解到 Python 的基本数据类型和基本用法,后面再学习语句之后就可以进行简单的逻辑编程了 。
Python 入门之基本数据类型的更多相关文章
- Python入门篇-基础数据类型之整型(int),字符串(str),字节(bytes),列表(list)和切片(slice)
Python入门篇-基础数据类型之整型(int),字符串(str),字节(bytes),列表(list)和切片(slice) 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 一.Py ...
- Python 入门(2):数据类型
一 Number(数字) 1.1 数字类型的创建 a = 10 b = a b = 5 print(a) 10 print(b) 5 1.2 Number 类型转换 a = 5.2 b = 5 c = ...
- Python入门,基本数据类型
1.Python中的注释 单行注释:#注释内容 多行注释:三引号(单或者是双) ''' 注释内容 ''' """ 注释内容 """ 2.输入 ...
- Python入门-深入了解数据类型以及方法
写在开始:每一种数据类型,有对应一种功能,面对不同的问题,使用不同类型. 1.全部数据类型 1.2数值型:解决数字的计算问题 #基础的计算,求除结果,求商,求余数 print(10 / 3) prin ...
- python 入门基础4 --数据类型及内置方法
今日目录: 零.解压赋值+for循环 一. 可变/不可变和有序/无序 二.基本数据类型及内置方法 1.整型 int 2.浮点型float 3.字符串类型 4.列表类型 三.后期补充内容 零.解压赋值+ ...
- Python入门3 —— 基本数据类型
一:为何变量值(记录的数据)要有类型呢? 1.既然可以记录事物的状态,为什么要分类型呢? 变量值是来记录事物状态的, 而事物的状态是多种多样的, 所以对应着就要应该用不同类型的值去记录这些状态. 二: ...
- python入门-变量与数据类型
1.命名规则 变量名只能包含字母.数字和下划线.但不能以数字打头. 变量名不能包含空格 不能与关键字冲突 变量名应尽量简短且具有描述性 2.字符串 python中引号括起的内容,其中引号可以为单引号或 ...
- Python入门11 —— 基本数据类型的操作
一:数字类型:int.float字类型 1.操作: 比较运算:int与float之间是可以比较大小 数学运算:+-*/,int与float之间也可以进行数学运算 print(10 > 3.1) ...
- python入门(8)数据类型和变量
python入门(8)数据类型和变量 数据类型 在Python中,能够直接处理的数据类型有以下几种: 整数 Python可以处理任意大小的整数,当然包括负整数,在程序中的表示方法和数学上的写法一模一样 ...
随机推荐
- jQuery制作鼠标经过显示图片大图,生成图片tips效果
一般tips都是文字,这个可以支持图片,很漂亮: 演示 <script type="text/javascript"> // Load this script on ...
- C++模拟OC的多重自动释放池
使用过OC的都知道,OC的引用计数机制用起来还比较方便.于是就仿照OC的形式搞了个C++引用计数. 支持多重自动释放池,每次autorelease都会放到栈顶的自动释放池中. 自动释放池也可以像变量一 ...
- 【leetcode 简单】 第一百零八题 找到所有数组中消失的数字
给定一个范围在 1 ≤ a[i] ≤ n ( n = 数组大小 ) 的 整型数组,数组中的元素一些出现了两次,另一些只出现一次. 找到所有在 [1, n] 范围之间没有出现在数组中的数字. 您能在不 ...
- Windows无法访问局域网内共享文件夹[0x800704cf,0x80070035]解决方案
Windows7系统突然无法访问访问其他windows机器的共享文件夹,出现0x800704cf或者0x80070035错误: 解决方案如下两张图,配置与下面两张图为准,即可解决: 1:window+ ...
- dubbox ExceptionMapper Filter request response 数据获取 数据传递
dubbx虽然是基于jboss的resteasy实现restfull,但是对resteasy原生的配置却不支持(可能是考虑到dubbo本事的设计模式及实现难度,但是和大部分framework的设计风格 ...
- ORB_SLAM2 源码阅读 ORB_SLAM2::ORBextractor
整体架构 构造函数进行初始化,传入设定几个重要的成员变量.nfeatures(特征点的个数).nlevels(构造金字塔的层数).scaleFactor(金字塔中相邻层图像的比例系数).iniThFA ...
- 解决 Electron 包下载太慢问题
项目下新建 .npmrc 文件,加入如下配置: electron_mirror=https://npm.taobao.org/mirrors/electron/ 即使用淘宝的源,重新 npm inst ...
- 使用Picker的时候,让input输入框使用焦点,手机键盘不弹出
$("#address").click(function(){ document.activeElement.blur(); })
- Python标准库内置函数complex介绍
from:http://www.jb51.net/article/57798.htm 本函数可以使用参数real + imag*j方式创建一个复数.也可以转换一个字符串的数字为复数:或者转换一个数字为 ...
- 2017-2018-2 20179205《网络攻防技术与实践》Windows攻击实验
Windows攻击实验 实验描述: 使用Metaspoit攻击MS08-067,提交正确得到远程shell过程的截图(不少于五张). MS08-067漏洞介绍 MS08-067漏洞的全称为&quo ...