A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

('------ lesson3_字符串--------')

知识点汇总:

1,什么是字符串

2,字符串的定义:

   单引号''name ='tom'
双引号“”name =“tom”
三引号“”“”可用做多行注释
   注意:不能单双引号混用要成对的出现否自将报错   语法错误:EOL扫描字符串文字时

使用区别:
        1- 如果字符串本身有' 那么就用双引号 “
        2- 如果字符串本身有” 那么就用单引号 “
        3- 可以使用转义 \

        4- 三引号:            1- 字符串定义            2- 注释            3- 多行  '3.14'



3,拼接:

  1.多个字符串进行连接+连接符

   2.多个相同字符串连接字符串* n

4,序列(序列)

1- 特性:
        1- 编号- 序号- 下标-------- 唯一的
        2- 元素
        3- 空字符串  str1 =''
    2- 字符串- 序列类型        1- 下标:            1- 正下标--- 从左边 0 开始到长度-1                 name ='tom'--- name [3] --- IndexError:字符串索引超出范围            2- 负下标--- 从右边 -1 开始    3-len ()--- 计算序列的长度--- 有返回值- 就是计算的对象的长度    4- 切片:  


    特性:1- 下标;  2- 左含右不含

        SA = '世界你好'
        1- 取中间段
            1-字符串1开始:结束],从开始开始,到端的部结束,不但包括端的
            2- STR1 [ 获取内容的首字符下标:该下标+ 长度] --- *

            比如要切[6:6 + 3]
        2- 取尾部:
            1-string1 [start:],从开始开始,到字符串结束

             切世界[7:]
        3- 取头部:
            string1 [:end],从第一个字符开始,到结束位置结束,但不包括结尾比如
            取你好sa [:6]
        4- 什么时候用正下标签或者负下标?
            1- 看被切对象
            2- 如果左右都变化- 切片不好操作--- 后续讲解---- split   
        5- 被切对象,切完之后会不会改变?- - 不会改变,只是切出来的对象,作为一个新对象!
'''
str1 = “我的名字是汤姆”
print(str1 [3: 7])
print(str1)
#print(str1 [:: - 1])#   倒序左含右不含  
'''
1- 切切中间某一段:str1 [3:3 + 4]
2- 切切前一段:str1 [:7] - 留前,写尾2- 切切后一段:str1 [7 :] - 留后,写前'''#常用的路径写法 #fileDir ='G:/ test' #fileDir2 ='G:\\ test'

#fileDir3 = r'G:\ test'

#取消转义#print (type(str1))#<class'str'>  


print ('--- lesson4_列表+元组---' )
'''
知识点汇总:
1- 列表---列表特性:   

    1- 列表也是一种序列类型      

  2- 下标      

3- 能切片        

4- 可以存储任何类型的数据,每个元素是任意类型        

5- 内容可以改变:

增加改查           

1- 值   alist [0] = 9           

2- 个数 alist.append

(5)--- 增加后面--- 追加   

1- 列表的定义:      

1- [] --- 英文的中括号      

  2型([])---- < class'list '>         

3- 例子: alist = [1,3.14,'abc',[100,200]]   

2- 列表的使用   

    1- 获取列表元素  - 列表名[ 下标]     

   2- 每一个元素用 ,隔开      

3- 切片- 切出来的对象跟被切对象类型一样

2- 元组:
    1- 元组跟我们大家熟悉的数组是一样的吗???
        1- 数组:同一类型
        2- 元组:任意类型
        特性:
            1- 元组也是一种序列类型
            2- 下标
            3- 能切片
            4- 可以存储任何类型的数据,每个元素是任意类型
            5- 内容不可以改变!!!
    2- 元组的定义:
        1- 空元组 ()---类型(()) ---- <  class'tuple '>
        2- 一个元素的元组tu1 =(1,)   如果元组中只有一个元素的话元素后要加上,
    3- 元组的使用:
        1- 下标获取值
        2- 切片
        3-
            TypeError:'tuple'对象不支持项目赋值
总结:
    1- 字符串和元组不能改变值和数量,否则:
        TypeError:'str'对象不支持项目赋值
    2- 元组不能改变本身的内容,否则和列表可以通过函数转换:
        1- 元组转列表  alist = lsit(元组)
        2- 列表转元组  tu1 = tuple(列表)
    3- 列表和元组定义一个元素的时候区别
        1- 列表  [1]
        2- 元组  (1,)
    4- 使用场景:
        1- 列表--- 存储的对象内容是可以改变的如排序        2- 元组---  
存储的对象不想让其他人去改变-----   配置参数1- 字符串不能改变元素值!    -TypeError:'str'对象不支持项目分配列表:    1- 列表的元素值可以改变!    2- 列表可以改变元素的个数!append(尾部)insert(指定位置)元组:    1- 不能改变元素的值!    2- 不能增加删除删除元素!''' #print(type([]))#< class'list '> #alist = [1,3.14,'tom',[10,20]] #del alist [1],alist [2]#下标删除#res = alist.pop(1)#下标删除--- 有返回值#alist.remove(1)#删元素- 遍历- 最慢的#alist [0] = 50   

#alist.append(100)#print(
res)
'''

列表与元组对比分析:
1- 列表:
    1- 下标,切片
    2- 可以改变元素值
    3- 可以增加元素--alist.append-- 尾部  - insert() - 任意位置
    4- 删除元素
    5 - 保存任意类型
    6- 一个元素 [1] 2- 元组:    1- 下标,切片    2- ----     3- ---     4- ----     5- 保存任意类型    6- 一个元素(元素,)''”打印(轮(2 / 3,6)) #round关键字保留特定位数

alist = [100,3.14,'abc',[1,3]]
# del alist[1:3] #切片删除
# print(alist.pop(1))#删除某一元素
alist.remove(3.14)#执行效率最慢!

alist.append(5)#尾部增加 且只能给一个参数
alist.insert(1,7)#(下标位置,插入元素)

---------------------
【转载】仅作分享,侵删
作者:枷锁#
原文:https://blog.csdn.net/weixin_41942190/article/details/84949725


2 个回复

倒序浏览
奈斯
回复 使用道具 举报
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马