python第二课——数据类型1
day02(上午)主要讲了进制问题,小编之前已经发过了 day02(下午): 1.数据类型: 分类: 1).整数型:int浮点型(小数):float布尔型(True/False):bool 2).字符串型:str 列表:list元祖:tuple字典:dict集合:set【记住】都是容器类型 3).NoneType:取值None解释:空、不存在、没有、未知、不确定... 4).自定义类型:Person、Animal、Cat、Dog、Student... 2.字符串类型: 说明:今日讲解的内容只包含字符串所需知识的50%,还有50%后续再讲(函数) 2.1.字符串数据的特点: 1).是不可变的数据类型 2).它是容器类型数据,有长度,也有下标/索引(index) 掌握如下几个概念: 1).开始索引 0表示 2).结束索引 -1表示/length-1 如何访问字符串数据? 访问分为两部分考虑!! 1).获取字符串中的某个元素 通过字符串名字配合下标得到想要的元素内容 例如:str1[-1] 2).设置字符串中的元素 是不可以的,原因:字符串不可变 2.2.常见的一些错误 1).下标越界了 --> 运行时异常 错误类型:IndexError 理解:下标越界了 【注意】左右边界都有可能超出,所以要避免... 代码如下:错误现象
str1 = 'abcdefg123' print(str1[10]) print(str1[-11])
2).字符串一旦定义了,不能改变其任何元素的内容 错误类型:TypeError 理解:字符串是不可变的数据类型,一旦定义了,不能单独修改其某个元素的内容 但是我们可以直接给变量赋一个新的字符串数据,此操作可以认为是直接改变了内存中的引用地址,这是合法的... 代码如下:错误现象
str1 = 'abcdefg123' str1[2] = 'C' print(str1)
2.3.字符串的切片操作 字符串的切片操作: 作用:可以得到原字符串中某索引开始到某索引结束范围内的子串, 原串不变(不受到影响) 格式:字符串名[start:end:step] 解释: start:起始索引 end:结束索引 step:步长 默认为1 【注意事项】 切片操作,满足含特头不含尾的点(计算机领域99%的情况) 举例:str1[2:5] --> 范围:[2,5) 代码如下:
str2 = "唧唧复唧唧,木兰当户织,不闻机杼声,惟闻女叹息" # print(len(str2)) str3 = str2[3:5] # print(str3,type(str3)) # print(str2) print(str2[5:]) print(str2[:5]) print(str2[:-5]) print(str2[2:-2]) print(str2[:10:2]) print(str2[::]) print(str2[:]) print(str2[::-1]) print(str2[-7:11:-1])
2.4.字符串的定义 如果字符串的内容比较少,我们可以使用单个单/双引号开始和结尾来定义, 但是如果字符串的内容比较多,而且还需要以我自定义的样式进行打印显示的话, 我们可以使用三个单/双引号开始和结束来定义 符号:和注释相同 '''...'''"""..."""注意:需要有变量来接受 代码如下:
content = '''遥想公瑾当年,小乔初嫁了; 雄姿英发,羽扇纶巾; 谈笑间,樯橹灰飞烟灭 ''' content = """遥想公瑾当年,小乔初嫁了; 雄姿英发,羽扇纶巾; 谈笑间,樯橹灰飞烟灭 """
2.5.转义字符 以下内容涉及到转义字符的使用: 什么是转义字符? 在python语言中已经失去其原本含义,比如不想将n表示为n,将其转义 就表示为换行了; 常用的转义字符如下:
:换行符 :制表符 ":双引号 ':单引号 :退格
r的作用以及使用场景: 如果字符串记录的是一串物理地址,那么地址内容中可能涉及到转义字符的存在, 但是在路径层面是不允许转义的,所以我们需要将转义字符的含义全部剔除, 只需要在路径第一个引号的前面显示的定义一个r即可 代码如下:
address = "D:\baisc\tpython1808\day02\hello.html" address = r"D:aisc python1808day02hello.html" print(address)
2.6.字符串的*和+操作: 对于*操作而言:将字符串数据连续执行多次 对于+操作而言:将两个字符串数据拼接起来,得到一个更长的串 代码如下:
content = "猥琐发育别浪" print(content * 5) print('*' * 50) print(content + ',灭团了')
2.7.占位符 占位符的使用: 作用:如果字符串中某些元素的内容一开始并不确定,我们可以先用占位符占个位置, 等到之后明确了数据内容,再讲数据放入到占位符中; 分类学习: 第一类:百分号原则 符号: %d:表示整数数据字符 %f:表示浮点数据字符 %s:表示字符数据(万能符) 第二类:format()传参的方式来实现/大括号原则 注意:format()函数不是内置函数,它属于str的函数,必须通过str.的形式进行调用 代码如下:
name = "韩梅梅" age = 23 height = 165.5 print("姓名:%s,年龄:%d岁,身高:%.1fcm" %("李雷",25,175.5)) print("姓名:%s,年龄:%010d岁,身高:%.1fcm" %("李雷",25,175.5)) print("姓名:%s,年龄:%d岁,身高:%.1fcm" %(name,age,height)) print('-' * 60) print('我是:{},最喜欢的男歌星:{},最喜欢看的电影是:{},我最喜欢的老师是:{}'.format('班长','tfboys','铁血战士','老郭')) print('我是:{3},最喜欢的男歌星:{1},最喜欢看的电影是:{0},我最喜欢的老师是:{2}'.format('小电影','张学友','苍老师','班长')) print('我是:{name},最喜欢的男歌星:{star},最喜欢看的电影是:{film},我最喜欢的老师是:{teacher}'.format(teacher='小泽老师',star='刘德华',name='班长',film='老郭的教学视频'))
补充占位符: %o: 将十进制数据转换为八进制数据 %x: 将十进制数据转换为十六进制数据
python第二课——数据类型1的更多相关文章
- Python 第二课笔记
1.模块初识 Python标准库和第三方库, 写好的功能封装好,起个名字,就是模块也叫库,直接导入就能用了. 标准库就是不需要安装,就能够导入的库 第三方库必须下载,安装才能使用的库. 1.1 两个标 ...
- python第二周数据类型 字符编码 文件处理
第一数据类型需要学习的几个点: 用途 定义方式 常用操作和内置的方法 该类型总结: 可以存一个值或者多个值 只能存储一个值 可以存储多个值,值都可以是什么类型 有序或者无序 可变或者不可变 二:数字整 ...
- 小哈学Python第二课:Hello Word
Python入门 1.Hello World 2.Hello World
- python第二课--分支结构与循环结构
if语句---分支结构 在Python中,要构造分支结构可以使用if.elif和else关键字.所谓关键字就是有特殊含义的单词,像if和else就是专门用于构造分支结构的关键字,很显然你不能够使用它作 ...
- python第二课
本节内容 1.列表list.切片 2.字典dict
- Python第二课-输入输出
name = input() 输入的字符串已经赋值给变量name print() 输出内容 print(,) print中,连接字符串相当于空格
- python第二课list基本命令
列表: stus= 'ada,dsfas.,saf,sdfas,saf' #字符串new_stus = ['段','加','linux','123','数组'] #列表 取值方便#列表,数组,l ...
- 第二篇.1、python基础之数据类型与变量
一.变量 1 什么是变量之声明变量 #变量名=变量值 age=18 gender1='male' gender2='female' 2 为什么要有变量 变量作用:“变”=>变化,“量”=> ...
- 第二章:python基础,数据类型
"""第二章:python基础,数据类型2.1 变量及身份运算补充2.2 二进制数2.3 字符编码每8位所占的空间位一个比特,这是计算机中最小的表示单位.每8个比特组成一 ...
随机推荐
- C盘空间被占满的原因
如何禁止IIS在C:\Windows\System32\LogFiles\HTTPERR中生成日志文件C:\Program Files\Microsoft SQL Server\MSSQL10_50. ...
- Java基础教程(16)--注解
一.注解基础知识 1.注解的格式 最简单的注解就像下面这样: @Entity @符号指示编译器其后面的内容是注解.在下面的例子中,注解的名称为Override: @Override void ...
- slf4j和log4j源代码解析以及详解
备注:下面所有代码以log4j为例 包结构 slf4j-api.jar对外提供api slf4j.log4j12.jar提供适配器 log4j.jar是log4j的jar slf4j初始化 获取ILo ...
- SpringBoot(五) Web Applications: MVC
统一异常处理 SpringBoot的默认映射 /error 码云: commit: 统一异常处理+返回JSON格式+favicon.ico 文档: 28.1.11 Error Handling 参考 ...
- CPU执行程序的原理(简化过程)
前言 看了网上的一些描述CPU执行程序的过程,发现他们涉及到的内容太多了,恨不能把整个CPU的底层结构都拿出来说,这对计算机理论知识匮乏的新人甚至是一些老人都是非常不友好的.这个问题也是当初拦在我面前 ...
- 【代码笔记】iOS-archive保存图片到本地
一,工程图: 二,代码: RootViewController.h #import <UIKit/UIKit.h> @interface RootViewController : UIVi ...
- 各浏览器禁用某网站JS脚本的方法 【转】
某些网站,经常会加载一些非常讨厌的JS脚本,如果我们想禁止这个网站的JS脚本,可以使用下面的方法: 一.IE浏览器 1.在Internet选项中,选择安全选项卡,然后点击受限制的站点,点击下面的站点 ...
- Hbase-indexer常用命令
1. 启动hbase-indexer服务 nohup ./hbase-indexer server -z s1:,s2:,s3:,s4:,s5: > /work/hbase-indexer.lo ...
- 葡萄城报表介绍:Web 报表
Web(World Wide Web)即全球广域网,也称为万维网,它是一种基于超文本和 HTTP 的.全球性的.动态交互的.跨平台的分布式图形信息系统.Web 报表是以 Web 作为信息展示平台,可以 ...
- idea插件Lombok
在spring boot 中,我们可以使用@Data标签,这样就不需要手动添加getter/setter方法了,但Idea会报错. 此时,我们需要安装Lombok插件,安装好插件后便可以解决这个问题. ...