首页 > 其他分享 >【字符串】

【字符串】

时间:2024-02-23 22:48:05浏览次数:19  
标签:00 下标 Python print str 字符串

  • 首先创建字符串可以使用单引号、双引号、三单引号和三双引号,其中三引号可以多行定义字符串,Python 不支持单字符类型,单字符在Python中也是作为一个字符串使用。
  • 我们定义一个 变量 str = 'python' 语句,它在计算机中的执行顺序是先在内存中创建一个字符串 Python ,在程序栈寄存器中创建一个变量 str,最后把 Python 的地址赋给 str

字符串的常见操作

首先随机定义一个字符串用于后面描述字符串的功能

str = '学习Python'

【1】切片 [开始:结尾] 取左不取右

print(str[0])       # 学
print(str[-1])      # 从右往左只取一个字符:n
print(str[-3:-1])   # 从右往左取,从倒数第三个字符取到倒数第一个字符:ho
print(str[3:])      # ython

"""
   切片的定义: [起始下标 : 终止下标 : 步长]    取左不取右边,左闭右开
   注意1 正数:从左往右  负数:从右往左
   注意2 起始下标如果不写,默认从:0 开始;终止下标如果不写,默认取值是字符串的长度;步长如果不写,默认为 1
"""
print("============================================================")
print(str)
print(str[:])
print(str[::])
print(str[0:])
print(str[0::1])
print(str[0:len(str)])
print(str[0:len(str):])
print(str[0:len(str):1])

# 切片 [开始:结尾:步长] 取左不取右
print(str[::2])     # 学Pto
print(str[::1])     # 学习Python

【2】字符串替换

newStr = str.replace('Python', 'Java')
print(newStr)       # 学习Java

【3】字符串查找,find()、index()、rfind()、rindex()

print(str.find('P'))                    # 返回第一次出现的子串的下标:2
print(str.find('h', 2))                    # 设定下标2开始查找:5
print(str.find('23333'))                # 查找不到返回-1
print(str.index('y'))                    # 返回第一次出现的子串的下标:3
print(str.index('P'))                    # 不同与find(), 查找不到会抛出异常

【4】字符串转大小写, upper()、lower()、swapcase()、capitalize()、istitle()、isupper()、islower()

print(str.upper())                # '学习PYTHON'
print(str.swapcase())            # '学习pYTHON', 大小写互换
print(str.istitle())            # 标题是大小写字符串:True
print("学习python".istitle())    # False
print(str.islower())            # False

【5】字符串去空格,strip()、lstrip()、rstrip()

str2 = " 学习Python "
print(str2.strip())
print(str2.lstrip())
print(str2.lstrip())

【6】字符串格式化

print("%s,%s" % ("帅帅", 21))                    # '帅帅,21'
print("{},{}".format("帅帅", 21,))            # 推荐使用format格式化字符串
print('{name},{age}'.format(age=21, name='帅帅'))    # 根据属性名称进行匹配输出

【7】字符串连接与分割,使用 + 连接字符串,每次操作会重新计算、开辟、释放内存,效率很低,所以推荐使用join

l = ['2023', '11', '18', '22:00:00']
str3 = '-'.join(l)                # 2023-11-18-22:00:00
print(str3)
print(str3.split('-'))            # ['2023', '11', '18', '22:00:00']

【8】关于字符串的一些共同操作  len() max() min()

str = "12345abcaBC"
print(len(str))         # 12
print(max(str))         # c
print(min(str))         # 1
print(str.count("a"))   # 2

 

标签:00,下标,Python,print,str,字符串
From: https://www.cnblogs.com/michael-study/p/18030500

相关文章

  • 综合练习字符串2
    思路2......
  • 代码随想录 day59 两个字符串的删除操作 编辑距离
    两个字符串的删除操作两种思路如果是以最长公共子序列去理解求出这个子序列长度然后原长减一下就行如果是直接正面求解就是如下解法递推式很好理解初始化意思是当一个串为0长度时需要操作另一个字符串长度次也就是直接赋予下标编辑距离dp[i-1][j-1]+1意......
  • 综合练习字符串1
    ALT+回车:将一句代码分割成两句代码charAt()方法的结果是字符串类型‘1’、‘2’···,需要变成数字1、2···,利用ASCii表(字符串‘0’对应ascii为48,所以数字0=字符串‘0’-48=48-48=0)思路2jdk12后,switch简化......
  • KMP字符串匹配算法
    什么是KMPKMP算法主要应用在字符串匹配问题。因为是由这三位学者发明的:Knuth,Morris和Pratt,所以取了三位学者名字的首字母。所以叫做KMP 核心思想KMP的主要思想是:「当出现字符串不匹配时,可以知道一部分之前已经匹配的文本内容,可以利用这些信息避免从头再去做匹配了。」(可......
  • 24 - 格式化字符串
    格式化字符串笔者认为格式化字符串(formattedstring)在任何语言里都值得单独拿出来做个笔记,因为它是编程中控制输出的重要一环。FormattedStringLiterals(f-string)官网的翻译为“格式化字符串字面值”。比较常用的格式化方法。在字符串前加上前缀f或F,通过{expres......
  • 字符串
    字符串KMP\(p_i\)表示\(s_{1...i}\)的最长真前缀,真后缀(“真”即是不包括原串)相等处理就很简单,每个i就判断能否更新i-1的答案,如不行就i变成\(p_{i-1}\)再处理Fu(i,2,m+n+1){ intj=p[i-1]; while(j>0&&a[i]!=a[j+1])j=p[j]; if(a[i]==a[j+1])p[i]=j+1;}EXKMP\(p_i\)表......
  • linux统计字符串出现次数(linux查询关键字出现的个数了解)
     使用脚本统计字符串出现次数#!/bin/bash#获取要监控的本地服务器IP地址IP=`ifconfig|grepinet|grep-vE'inet6|127.0.0.1'|awk'{print$2}'`echo"IP地址:"$IP#获取cpu总核数cpu_num=`grep-c"modelname"/proc/cpuinfo`echo"cpu总核数:&q......
  • 如何在python中判断一个字符串是否可以转换为数字
    方法一:isdigit()不可识别汉字小数类型str1='1'str2='2.1'str3='三'str4='3.3.3.3'print(str1.isdigit())print(str2.isdigit())print(str3.isdigit())print(str4.isdigit())结果:TrueFalseFalseFalse方法二:isdecim......
  • C++ 第二节课 结构体, 字符串 和 C语言的区分
    1#include<iostream>23usingnamespacestd;456//结构体7structStu{8stringname;9intage;1011//结构体重的函数叫做成员函数在C中是不能直接写函数的只能使用函数指针,通过指针的回调出发函数(行为)12//默认的修饰符......
  • 格式化字符串
    泄露栈的内存,泄露任意地址内存修改栈的内存,修改任意地址内存\x00截断漏洞用栈溢出覆盖字符串截断符\x00使得泄露一些重要信息,如canary泄露或直接泄露flag#include<stdio.h>#include<string.h>intmain(){char*x="hello,world";strcat(x,"flag{666}");intl......