字符串常用操作
# ======================================基本使用======================================
# 1、用途:记录描述性质的状态 # 2、定义方式:在单引号、双引号、三引号内包含的一串字符
# msg = "[1,2,3]" # msg=str("[1,2,3]") # 数据类型转换:str可以把任意类型转换成字符串类型
# str([]) # 3、常用操作+内置的方法
# 优先掌握的操作:
# 1、按索引取值(正向取+反向取) :只能取
# msg='hello你好'
# print(msg[0]) # 取出的由单一字符组成的str
# print(msg[5])
# print(msg[-1]) # l=[1111,222]
# l[0]=3333
# print(l) # msg="hello"
# msg[0]="H" # 2、切片(顾头不顾尾,步长)
msg = 'hello你好'
# print(msg[1:6]) # ello你
# print(msg) #字符串不会变 # print(msg[1:6:1]) # 默认步长,1 2 3 4 5
# print(msg[1:6:2]) # 默认步长,1 3 5 # print(msg[:6:2]) # 省略起始位置,默认起始位置为0
# print(msg[::2]) # 省略结束位置,默认一直到末尾全部都取到
# print(msg[::]) # 省略步长,默认步长为1
# print(msg[:]) # 省略步长,默认步长为1 # 了解:
# msg='hello你好'
# print(msg[0:5:1])
# print(msg[0:5:-1])
# 方向需要保持一致才行
# print(msg[-1:-5:-1]) # -1 -2 -3 -4
# 好 你 o l # msg = 'hello你好'
# print(msg[::-1]) # -1 # 3、长度len
# msg = 'hello \n你好'
# print(len(msg)) # 统计的是字符的个数 # 4、成员运算in和not in
# msg = 'hello 你好'
# print("你好" in msg)
# print("你好" not in msg) # 推荐使用
# print(not "你好" in msg) # 不推荐使用 # 5、移除空白strip
# msg=" hello "
# res=msg.strip()
# print(res) # msg=" \t \n hello \t"
# res=msg.strip() # 默认去掉的是字符串左右两端的空白字符串
# print(res) # msg=" \t \n he llo \t"
# res=msg.strip() # 默认去掉的是字符串左右两端的空白字符串
# print(res) # msg="*()-=hello()*&#@!"
# res=msg.strip("()*=-!&#@")
# print(res) # 得到的是新字符串,没有改变原来的
# print(msg) # user = input('用户名>>>: ').strip() # user="egon "
# password = input('密码>>>: ').strip()
# if user == "egon" and password == "123":
# print('账号密码正确')
# else:
# print("账号或密码输入错误") # 6、切分split
# msg="a:b:c:d"
# res=msg.split(':')
# print(res)
#
# msg="hello 你 好"
# print(msg.split(' ')) # msg="a:b:c:d"
# res=msg.split(':') # 把列表拼成一个str,列表中的元素必须全部为str类型
# print(res)
# print(":".join(res)) # 'a'+":"+'b'+":"+'c'+':'+"d"
# print("-".join(res))
# print("=".join(res))
#
# # 7、循环
# for x in "hello 你好":
# print(x) # 需要掌握的操作
# 1、strip,lstrip,rstrip
# msg="*****hello*****"
# print(msg.strip('*'))
# print(msg.lstrip('*'))
# print(msg.rstrip('*'))
# 2、lower,upper
# msg="aABc你1"
# print(msg.lower())
# print(msg.upper()) # 3、startswith,endswith
msg = "dsb lxx is sb"
# print(msg.startswith("ds"))
# print(msg.endswith("sb")) # 4、format的三种玩法
# print("my name is %s %s" % ("egon",18)) # print("my name is {} {}".format("egon",18))
# print("my name is {x} {y}".format(y=18,x="egon"))
# print("my {1}name is {0} {0}{1}{1}".format("egon",18)) # x='egon'
# y=18
# print(f"=====>{x}===>{y}") # 5、split,rsplit
# print("egon:18:male:10".split(':',2))
# print("egon:18:male:10".split(':',1))
# print("egon:18:male:10".rsplit(':',1)) # 6、join # 7、replace
# msg="*()-=he llo()*&#@!"
# res=msg.strip("()*=-!&#@").replace(' ','')
# print(res) # print('my name is sb sb sb'.replace('sb','SB',1)) # 8、isdigit
# age="18**** "
# print(age.isdigit()) #
# age = input('>>>: ') # age = "***18_++_ "
# if age.isdigit():
# age = int(age)
# if age > 18:
# print('猜大了')
# elif age < 18:
# print("猜小了")
# else:
# print('猜对了')
# else:
# print("必须输入数字,小垃圾") # 了解操作
#1、find,rfind,index,rindex,count
# print("=abcdefab".find("ab")) # 查找一个子字符串在大字符串中出现的起始位置
# print("=adcabdefab".find("ab",0,6)) # 查找一个子字符串在大字符串中出现的起始位置
# print("=adcabdefab".rfind("ab")) # 查找一个子字符串在大字符串中出现的起始位置
# print("====".index("ab")) # 找不到则报错,而find则会返回-1 #2、center,ljust,rjust,zfill
# print("egon".center(50,'*'))
# print("egon".ljust(50,'*'))
# print("egon".rjust(50,'*'))
# print("egon".zfill(50)) #3、expandtabs #4、captalize,swapcase,title
# print("my name is egon".capitalize())
# print("AbCd".swapcase())
# print("my name is egon".title()) #5、is数字系列
#在python3中
# num1=b'4' #bytes
# num2=u'4' #unicode,python3中无需加u就是unicode
# num3='四' #中文数字
# num4='Ⅳ' #罗马数字 # isdigit():用于b和u格式,即num1和num2
# isdecimal():用于u格式,即num2
# isnumberic():用于u,中文数字、罗马数字,即num2、num3、num4 #isdigt:bytes,unicode
# print(num1.isdigit()) #True
# print(num2.isdigit()) #True
# print(num3.isdigit()) #False
# print(num4.isdigit()) #False #isdecimal:uncicode
#bytes类型无isdecimal方法
# print(num2.isdecimal()) #True
# print(num3.isdecimal()) #False
# print(num4.isdecimal()) #False #isnumberic:unicode,中文数字,罗马数字
#bytes类型无isnumberic方法
# print(num2.isnumeric()) #True
# print(num3.isnumeric()) #True
# print(num4.isnumeric()) #True #三者不能判断浮点数
# num5='4.3'
# print(num5.isdigit())
# print(num5.isdecimal())
# print(num5.isnumeric()) #6、is其他
# name='egon123'
# print(name.isalnum()) #字符串由字母或数字组成
# print(name.isalpha()) #字符串只由字母组成 # name="====>inputasd" # "input" in name
# print(name.isidentifier()) # name="egon"
# print(name.islower())
# print(name.isupper()) # name=" "
# print(name.isspace()) # name="My Name Is"
# print(name.istitle()) # ======================================该类型总结====================================
# 存一个值or存多个值
# 存一值 # 有序or无序
# 有序 # 可变or不可变(1、可变:值变,id不变。可变==不可hash 2、不可变:值变,id就变。不可变==可hash)
# 不可变 列表常用操作
# ======================================基本使用======================================
# 1、用途:按照位置存多个值 # 2、定义方式:在[]内用逗号分隔开多个任意类型的值
l = [111, 3.1, "abc", []] # l=list(...)
# print(type(l)) # 类型转换
# list(传入的可以是任意能够被for循环遍历的类型)
# print(list("hello"))
# print(list(["a",'b']))
# print(list({"k1":11,'K2':222})) # 3、常用操作+内置的方法
# 优先掌握的操作:
# 1、按索引改、取值(正向存取+反向存取):即可改也可以取
# l=[111,222,333,444,555]
# l[0]=1231231231231231231
# print(l) # l[5]=666 # 超出索引范围则报错,即不能用这种赋值操作为列表增加值 # 2、切片(顾头不顾尾,步长)
# l=[111,222,333,444,555]
# res=l[0:3]
# print(res)
# print(l) # 3、长度
# l=[111,222,333,444,555]
# print(len(l))
# 4、成员运算in和not in
# l=[111,222,333,444,555]
# print(111 in l)
# print(111 not in l) # 5、追加
# l=[111,222,333,444,555]
# l.append(666)
# l.append(777)
# print(l) # 5.1 往指定位置前插入值insert
# l.insert(0,123123231231)
# print(l) # 6、删除
# l=[111,"aaa",222,333,444,555]
# a:del是通用的、不是列表专属的删除方式
# del l[0]
# print(l) # b:列表专属的删除方式之指定元素删除
# res=l.remove("aaa")
# print(l)
# print(res) # None # c:列表专属的删除方式之指定索引删除
# l.pop() # 默认删除的是索引-1对应的值
# print(l) # res=l.pop(1)
# print(l)
# print(res) # 7、循环
# l=[111,"aaa",222,333,444,555]
# for item in l:
# print(item) # 需要掌握的操作
# l=[111,222,111,111]
# print(l.count(111)) # l = [10, -1, 3, 2, 11, 7]
# l.sort(reverse=True)
# print(l) # l = [10, -1, 3, 2, 11, 7]
# l.clear()
# print(l) # l=['a',1,'b']
# l.reverse()
# print(l) # l=[11,22,33]
# l.extend([444,555,66])
# print(l) # l.append([444,555,666])
# print(l) l1=[11,22,33]
# l1列表内存存储
# 索引0 值11的内存地址
# 索引1 值22内存地址
# 索引2 值33内存地址 # l2=l1.copy() # 等同于l4=l1[:]
# l2列表内存存储
# 索引0 值11的内存地址
# 索引1 值22内存地址
# 索引2 值33内存地址
# l2[0]=4444
# print(l2) # [4444, 22, 33]
# print(l1) # [11, 22, 33] # l3=l1
# l3[0]=4444
# print(l3)
# print(l1) # ======================================该类型总结====================================
# 存多个值 # 有序 # 可变

day06总结的更多相关文章

  1. day06 Request Response

    rw 读写模板的设置 day05 Request Response 1. HttpServletResponse 简介 1.1 Response 的 OutputStream 输出中文的问题 1.2 ...

  2. python day06笔记总结

    2019.4.3 S21 day06笔记总结 一.昨日内容补充 1.列表独有功能: 1.revers 反转 例:v1 = [1,2,4,88,2] v1.revers() print(v1) 2.so ...

  3. Python基础(正则、序列化、常用模块和面向对象)-day06

    写在前面 上课第六天,打卡: 天地不仁,以万物为刍狗: 一.正则 - 正则就是用一些具有特殊含义的符号组合到一起(称为正则表达式)来描述字符或者字符串的方法: - 在线正则工具:http://tool ...

  4. Day06 DOM4J&schema介绍&xPath

    day06总结 今日内容 XML解析之JAXP( SAX ) DOM4J Schema   三.XML解析器介绍   操作XML文档概述   1 如何操作XML文档 XML文档也是数据的一种,对数据的 ...

  5. python开发学习-day06(模块拾忆、面向对象)

    s12-20160130-day06 *:first-child { margin-top: 0 !important; } body>*:last-child { margin-bottom: ...

  6. 2017-2018-1 JAVA实验站 冲刺 day06

    2017-2018-1 JAVA实验站 冲刺 day06 各个成员今日完成的任务 小组成员 今日工作 完成进度 张韵琪 进行工作总结.博客.小组成员头像 100% 齐力锋 找背按钮声音 100% 张浩 ...

  7. C++Primer笔记-----day06

    ================================================================day06=============================== ...

  8. day06 - Python - 面向对象

    本节内容: 引子 面向对象 v.s. 面向过程 面向对象编程介绍 面向对象的特性:       封装       继承       多态 类.方法   1.引子 假设你现在是一家游戏公司的开发人员,现 ...

  9. 记录我的 python 学习历程-Day06 is id == / 代码块 / 集合 / 深浅拷贝

    一.is == id 用法 在Python中,id是内存地址, 你只要创建一个数据(对象)那么就会在内存中开辟一个空间,将这个数据临时加载到内存中,这个空间有一个唯一标识,就好比是身份证号,标识这个空 ...

  10. day06——小数据池、深浅拷贝、集合

    day06 小数据池 小数据池--缓存机制(驻留机制),只是一种规格,不会实际的开辟一个空间 == 判断两边内容是否相等 ***** # a = 10 # b = 10 # print(a == b) ...

随机推荐

  1. Vue入门 — Vue + vuetifyjs应用实践

    分享一个以前学vue时自己练手的一个小项目,项目使用vue-cli3创建,UI库用的是vuetifyjs,vuetifyjs官网:https://vuetifyjs.com/ 数据来源是网上随便找的一 ...

  2. 曹工说JDK源码(3)--ConcurrentHashMap,Hash算法优化、位运算揭秘

    hashcode,有点讲究 什么是好的hashcode,一般来说,一个hashcode,一般用int来表示,32位. 下面两个hashcode,大家觉得怎么样? 0111 1111 1111 1111 ...

  3. [原创][开源]SunnyUI.Net, C# .Net WinForm开源控件库、工具类库、扩展类库、多页面开发框架

    SunnyUI.Net, 基于 C# .Net WinForm 开源控件库.工具类库.扩展类库.多页面开发框架 Blog: https://www.cnblogs.com/yhuse Gitee: h ...

  4. error: RPC failed; curl 18 transfer closed with outstanding read data remaining的解决

    解决方案也是网上搜的,总结一下 一,加大缓存区git config --global http.postBuffer 524288000这个大约是500M二.少clone一些,–depth 1git ...

  5. 如何在Centos7安装swoole的PHP扩展

    1. 下载swoole源代码包 wget -c https://github.com/swoole/swoole-src/archive/v2.0.8.tar.gz 2.tar -zxvf v2.0. ...

  6. 【福利】FL Studio 20 汉化补丁包 _FL Studio 20 汉化包下载

    我这两天在网上搜索FL Studio 20汉化包,找了半天也没有找到真正的汉化包,不过好在功夫不负有心人,让我找到了一个不错的FL Studio 20汉化网站,里面提供了FL Studio 20汉化包 ...

  7. Lombok介绍和使用

    1 Lombok背景介绍 官方介绍如下: Project Lombok makes java a spicier language by adding 'handlers' that know how ...

  8. Jmeter基础003----Jmeter组件之测试计划和线程组

    一.测试计划 1.界面展示 测试计划是测试脚本的容器,主要是对测试脚本做总体设置.它定义了测试要执行什么,怎么执行(执行的).其界面如下图所示:   2.设置用户定义变量 在测试计划中定义的变量是在整 ...

  9. 恕我直言你可能真的不会java第1篇:lambda表达式会用了么?

    本文配套教学视频:B站观看地址 在本号之前写过的一些文章中,笔者使用了lambda表达式语法,一些读者反映说代码看不懂.本以为java 13都已经出了,java 8中最重要特性lambda表达式大家应 ...

  10. django OperationalError: unable to open database file 创建数据库