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的更多相关文章

  1. Python 第二课笔记

    1.模块初识 Python标准库和第三方库, 写好的功能封装好,起个名字,就是模块也叫库,直接导入就能用了. 标准库就是不需要安装,就能够导入的库 第三方库必须下载,安装才能使用的库. 1.1 两个标 ...

  2. python第二周数据类型 字符编码 文件处理

    第一数据类型需要学习的几个点: 用途 定义方式 常用操作和内置的方法 该类型总结: 可以存一个值或者多个值 只能存储一个值 可以存储多个值,值都可以是什么类型 有序或者无序 可变或者不可变 二:数字整 ...

  3. 小哈学Python第二课:Hello Word

    Python入门 1.Hello World 2.Hello World

  4. python第二课--分支结构与循环结构

    if语句---分支结构 在Python中,要构造分支结构可以使用if.elif和else关键字.所谓关键字就是有特殊含义的单词,像if和else就是专门用于构造分支结构的关键字,很显然你不能够使用它作 ...

  5. python第二课

    本节内容 1.列表list.切片 2.字典dict

  6. Python第二课-输入输出

    name = input() 输入的字符串已经赋值给变量name print() 输出内容 print(,) print中,连接字符串相当于空格

  7. python第二课list基本命令

    列表: stus= 'ada,dsfas.,saf,sdfas,saf'  #字符串new_stus = ['段','加','linux','123','数组']   #列表 取值方便#列表,数组,l ...

  8. 第二篇.1、python基础之数据类型与变量

    一.变量 1 什么是变量之声明变量 #变量名=变量值 age=18 gender1='male' gender2='female' 2 为什么要有变量 变量作用:“变”=>变化,“量”=> ...

  9. 第二章:python基础,数据类型

    """第二章:python基础,数据类型2.1 变量及身份运算补充2.2 二进制数2.3 字符编码每8位所占的空间位一个比特,这是计算机中最小的表示单位.每8个比特组成一 ...

随机推荐

  1. git 找回 git reset --hard HEAD 后的代码

    下面方法只针对当你本地代码做了 git add 或则 git commit 后又手贱的重置本地代码到上一个版本,导致本地代码丢失的情况. 如果你没有 git add 命令,而直接 git reset ...

  2. [日常] json_encode对中文和引号的处理差异研究

    json_encode()1.默认就是把所有 ASCII 可显示字符以外的统统转义为 Unicode如果把那些字符转义为 Unicode 之后,无论文件编码是否一致,都不会出现乱码,因此中文转成Uni ...

  3. JAVA 项目 调用外部的WebSerivce接口,入门实例 (一)

    前言: 第一次接触WebService,工作需要,调用外部的WebService接口,所以暂时我这里不考虑发布,做个记录,待以后回来可以看看,只是最初级的,所以有何不好.不对的地方,欢迎看到的同僚给予 ...

  4. Anychart隐藏属性

    一.嵌入字体的使用 font标签可以使用嵌入字体,只需加入embed="true"即可.

  5. spring源码分析-core.io包里面的类

    前些日子看<深入理解javaweb开发>时,看到第一章java的io流,发觉自己对io流真的不是很熟悉.然后看了下JDK1.7中io包的一点点代码,又看了org.springframewo ...

  6. Spring boot 入门二:Spring Boot配置文件详解

    一.自定义属性 当我们创建一个springboot项目的时候,系统默认会为我们在src/main/java/resources目录下创建一个application.properties.同时也支持ym ...

  7. Unity3D 场景切换加载进度条实现

    需要三个场景,场景A,场景B,场景C: 场景A:一个按钮,点击加载场景B: 场景B:从A切换到C过度场景,加载进度条: 场景C:目标场景: 创建OnProgress.cs脚本: using Syste ...

  8. C# 压缩图片到指定宽度,假如图片小于指定宽度 判断图片大小是否大于指定大小(KB) 如果大于则压缩图片质量 宽高不变

    class Program { static void Main(string[] args) {//G:\zhyue\backup\projects\Test\ConsoleApplication1 ...

  9. 在生产环境中安全执行更新删除SQL脚本的技巧

    今天在生产环境上解决问题,由于广发银行的管理制度是开发公司是不允许确生产环境的,所以我们只能把要更新的语句发给运营中心,由运营中心的投产人员执行,我们则在旁边看着:在他执行的时候发现了一个很有趣的技巧 ...

  10. 如何使用Nginx和uWSGI或Gunicorn在Ubuntu上部署Flask Web应用

    你好!欢迎阅读我的博文,你可以跳转到我的个人博客网站,会有更好的排版效果和功能. 此外,本篇博文为本人Pushy原创,如需转载请注明出处:https://pushy.site/posts/151981 ...