首页 > 其他分享 >Day 6 字符类型内置方法

Day 6 字符类型内置方法

时间:2024-09-26 19:49:54浏览次数:7  
标签:字符 内置 name 字符串 zhe 移除 print Day

今天没有昨日回顾,做了几道题,有生成*的金字塔,进阶猜年龄等等。今天主要学了字符类型的内置方法,就目前而言,还不知道这些有序无序,可变不可变等信息有何作用,但先学着呗,万一有用的,。但是这些快捷方式应该挺好用的,还不错。!

目录

1 为什么要有数据类型?

  • 对于不同类型的变量需要不同的数据类型去描述
  • 名字-字符串,爱好-列表,个人信息-字典

2 数字类型内置方法

2.1 整形

  • 作用:身高,体重,年龄,id号
  • 定义方式: y = 10
  • 方法: print(y+x)+ - * / % //
  • 存储一个值or多个值:一个
  • 有序or无序:没有有序无序这一说
    • 有序:有索引
    • 无序:无索引
  • 可变不可变:不可变
    • 可变:值变id变
    • 不可变:值变id不变

2.2 浮点型

  • 作用:钱,商品价格,导弹轨迹计算
  • 定义方式: y = 1.1, x = 2.2
  • 方法: print(y+x) + - * / % //
  • 存储一个值or多个值:一个值
  • 有序or无序:没有有序无序这一说
    • 有序:有索引
    • 无序:无索引
  • 可变不可变:不可变
    • 可变:值变id变
    • 不可变:值变id不变

3 字符串类型内置方法

  • 作用:女朋友名字,性别
  • 定义方式: name = 'sunch' , name = "wangby" ,name = str(10)
  • 方法: 优先掌握,需要掌握,了解
  • 存储一个值or多个值:一个值
  • 有序or无序:有序
    • 有序:有索引
    • 无序:无索引
  • 可变不可变:不可变
    • 可变:值变id变
    • 不可变:值变id不变

3.1优先掌握

name = ' sun cheng hao xue rui qing '
# 按索引取值
print(name[0])  #正向取第一个
print(name[-1])   #反向取第一个
# 切片:步长为正数,从左到右切片,负数从右到左切片
print(name[0:13:2])   #从0到12,顾头不顾尾
print(name[-12:])  #从倒数第12个取到最后一个
print(name[-1:-4:-1])  #此时仍是顾头不顾尾,即从右数第一个到第三个
print(name[-1::-1])
# 长度
print(len(name))  #计算字符串的长度
#成员运算 in|not in
print('sun' in name)
print('wang' in name)
print('xue' not in name)
print('liang' not in name)
# 移除空白,strip 移除两端的空格,括号里可以填想移除的,但必须在边缘
print(name.strip())  #成功移除两端空格
print(name.strip('qing'))     #因为右端有空格移除不了qing
print(name.strip('qing '))    #给qing加上空格qing 就在右端就可以移除了,只要遇到了就都移除,所以他继续把空格和i移除了
# 切分(切割)split
print(name.split(' '))   #以空格为界把他切开形成列表
#循环取值
name_list = name.split(' ')
for i in name_list:
    print(i)

3.2 需要掌握

s = '12345上山打老虎TIGER老虎没打着打到一直mouse小老鼠'
print(s.lstrip('13252'))
print(s.lstrip('15423'))
print(s.rstrip('老小鼠12'))
# 在Python中使用 lstrip 方法时,如果传入的是一个字符集合,那么它会移除字符串开头的所有这些字符,
# 直到遇到不在指定字符集合中的字符为止。这意味着,如果字符串开头的字符都在指定的字符集合中,那么这些字符都会被移除。
# l 从左开始  r 从右开始
print(s.lower())  #大写变小写
print(s.upper())  #小写变大写
print(s.startswith('1',0,3))   # 检查字符串中索引从2开始到3结束的字符串是否以’1‘开头,
                                                    # 返回值为true or false
print(s.endswith('鼠',10))   # 检查字符串中索引从2开始到3结束的字符串是否以’鼠‘结尾,
                                           # 返回值为true or false,第二个值可省略,默认到最后
name = 'xiaowang xiaoliang xiaosun xiaoxue xiaoxiao xiaoliang'
print(name.split(" ",1))  #第一个为切割字符,第二个为切割次数,切割后成列表
name_list = name.rsplit(" ")
print(name.rsplit(" ")) #rsplit表述从右切,默认为左
print('.。。'.join(name_list))  #join用前面的字符把列表中的所有元素拼接起来
print(name.replace('xiaoliang','xiaowu',1))
print(name.replace('xiaoliang','xiaowu'))
#replace将旧的字符串替换成新的字符串,第一个为旧的,第二个是新的,第三个是替换个数,不写默认全部替换
print(name.isdigit())
print('10'.isdigit())
# isdigit 方法用于检查字符串是否只包含数字,并且是非空的。如果字符串至少有一个字符,并且所有字符都是数字,则返回 True;否则返回 False。

3.3 了解

s = 'zhihuzheyeyezhehuzhi'
print(s.find('zhe'))   #从右往左找zhe
print(s.rfind('zhe'))   #从左往右找zhe
#  print(s.find('asdad'))   #找不到返回值 -1
print(s.index('zhe'))    #从左往右找zhe
print(s.rindex('zhe'))    #从右往左找zhe
#  print(s.index('sadsad'))    #找不到就报错
print(s.count('zhe'))   #计算zhe出现的次数
print('zhe'.center(50,'-')) # 50是总长度,center前面的是居中的字符串,剩余部分用第二个字符'-'填满
print('zhe'.ljust(50,'-'))  # 50是总长度,center前面的是左侧的字符串,剩余部分用第二个字符'-'填满
print('zhe'.rjust(50,'-'))  # 50是总长度,center前面的是右侧的字符串,剩余部分用第二个字符'-'填满
print('zhe'.zfill(50))   # 50是总长度,zfill前的字符放在最后面,前面填0填够总长度
print(s.expandtabs())

标签:字符,内置,name,字符串,zhe,移除,print,Day
From: https://www.cnblogs.com/chsun12/p/18434195

相关文章

  • Linux云计算 |【第四阶段】NOSQL-DAY2
    主要内容:Redis集群概述、部署Redis集群(配置manage管理集群主机、创建集群、访问集群、添加节点、移除节点)一、Redis集群概述1、集群概述所谓集群,就是通过添加服务器的数量,提供相同的服务,从而让服务器达到一个稳定、高效的状态;而单个Redis服务运行存在不稳定性,当Redis服务......
  • C++ 原始字符串(raw string literal )R“(...)“
    C++11可以在代码里嵌入一段原始字符串,该原始字符串不作任何转义,所见即所得。这个特性对于编写代码时要输入多行字符串,或者含带有特殊字符的字符串提供了巨大方便。语法:     R"(...)"记忆点:1.不做任何转义 stringstr="aaa\nbbb\nccc\n"; cout<<str<<endl......
  • netCore中的内置日志的使用
    1、netCore3.1中配置  参考链接: https://learn.microsoft.com/zh-cn/aspnet/core/fundamentals/logging/?view=aspnetcore-3.1usingSystem;usingSystem.Collections.Generic;usingSystem.Linq;usingSystem.Threading.Tasks;usingMicrosoft.AspNetCore.Hosting;......
  • python字符串
    1定义字符串text="Hello,World!"2多行字符串multi_line_text="""Thisisamulti-linestring."""3 字符串拼接greeting="Hello"name="Alice"message=greeting+","+name+"!"4......
  • NOIP2024集训Day39 DP
    NOIP2024集训Day39DPA.[AGC002F]LeftmostBall反向考虑,从最终状态,倒退它能指向多少种初始状态。dp策略:从左往右放,每次对最左边的一个空位,要么放一个白球,要么放一个有颜色的球,同时把该种颜色剩下的球都放到后面的位置去。具体的:定义\(f_{i,j}\)表示当前有\(i\)个白球......
  • 【20省选十联测day10】Easy Win
    【20省选十联测day10】EasyWin题意原题链接有\(n\)堆石子,\(n\le5\times10^5\),每堆石子有\(a_i\)个,\(a_i\len\)。Alice和Bob每次可以从,某一堆取至少\(1\)颗、至多\(x\)颗石子,不能取的失败。Alice先手,问对于所有\(1\lex\len\),问谁胜利。思路对于一堆石子,计......
  • 字符串从入门到退竞(2)——KMP 算法
    约定在文字描述中字符串下标从\(1\)开始,代码中从\(0\)开始。前缀函数对于长\(n\)的字符串\(S\),其前缀函数是一个长\(n\)的数组(数列)\(\pi\),定义如下:若\(S[1..i]\)有相等的真前缀和真后缀(称之为border),\(\pi[i]\)为其长度的最大值;若不存在,\(\pi[i]=0\)。字符串的......
  • 「FJWC2020Day5-zzq」rng 题解
    题意简述一个长度为\(n\)的实数序列\(a_i\),其中\(a_i\)为\([l_i,r_i]\)中独立均匀随机选取的实数。你只能通过交换相邻两个数,使得\(a_i\)单调不降。你需要求出你最少操作次数的期望,对\(M=998244353\)取模。\(1\leqn\leq10^6\),\(0\leql_i\ltr_i\leq10^{1......
  • leetcode每日一题day15(24.9.25)——公司命名
    思路:首先如果没有相同的后缀,则无论只要不是相同的首字母交换都不会出现重复情况,如果有重复后缀,则还需多增加个不能和,首字符与另一相同后缀字串的首字符相同的字串交换。主要矛盾已经明确,则可对矛盾进行分析。首先把范围缩小到只有两种不同首字母,对于这种情况      ......
  • C++ day06
    手动实现栈:#include<iostream>#include<cstring>usingnamespacestd;classStatic{private:int*arr;//动态分配栈inttop;//指向栈顶元素intcapacity;//记录栈的最大容量public://有参构造函数Static(i......