zoukankan      html  css  js  c++  java
  • 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:aisc	python1808day02hello.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: 将十进制数据转换为十六进制数据
  • 相关阅读:
    JavaScript中this指针指向的彻底理解
    JavaScript闭包应用介绍
    Javascript代码中的骚操作
    h2database.com 高级特性
    H2Database高级特性
    BlockingQueue的使用
    谈谈java的BlockingQueue
    Java基于Socket文件传输示例
    java socket 多线程网络传输多个文件
    用JAVA捕获屏幕、屏幕录像、播放
  • 原文地址:https://www.cnblogs.com/hankleo/p/10426719.html
Copyright © 2011-2022 走看看