首页 > 编程语言 >Python数据类型之字符串(String)

Python数据类型之字符串(String)

时间:2023-09-12 11:37:19浏览次数:50  
标签:字符 String Python 数据类型 print 为空 字符串 True string

Python 中的变量不需要声明。每个变量在使用前都必须赋值,变量赋值以后该变量才会被创建。

Python中常用的数据类型有6种,分别是:数字(Number)、字符串(String)、列表(List)、元组(Tuple)、字典(Dictionary)、集合(Set)。

字符串(String)

Python中的字符串用单引号''或者双引号""括起来,同时使用f反斜杠\转移特殊字符。

Python不支持单字符类型,单字符在Python中也是作为字符串来使用。

字符串常用操作

字符串常用的操作有:通过索引查询字符串中的单一字符、截取字符串、分割字符串、查看字符串长度、字符串判空、是否包含某一字符;

通过索引查询字符串中的字符:python中的索引有两种方式:正数代表从左边(头位置)开始,起始位为0,然后从左向右,依次递增。负数代表从右边(末尾)开始,起始位为-1,然后从右往左,依次递减。

string = 'ABCDEFG'
#索引从0开始
print(string[0]) # A
print(string[1]) # B
print(string[3]) # D
print(string[5]) # F
#索引从-1开始
print(string[-1])  # G
print(string[-2])  # F

截取字符串中的某一段字符:字符串的截取遵循左闭右开原则。

string = 'ABCDEFGHIGK'
print(string[0:3]) # ABC
print(string[3:5]) # DE

分割字符串:调用split()方法,通过字符串中的某个字符,将字符串分割为多个字符串,作为分割界限的字符串不包含在新字符串内。

 string = '001l002l003l'
 s_list = string.split('l')
 print(s_list)              # ['001', '002', '003', '']
 print(s_list[0])           # 001

 #数字1,2代表分割的次数,,没有则代表全部分割
 #分割1次
 print(string.split('l', 1)) # ['001', '002l003l']
 #分割两次
 print(string.split('l', 2)) # ['001', '002', '003l']
 #全部分割
 print(s_list)               # ['001', '002', '003', '']

查看字符串长度:通过调用len()方法,可以查看字符串的长度。

string = 'sfdgdgf'
print(len(string)) # 7

判断字符串是否为空:

  • 方式一:使用字符串长度判断,如果字符串长度为0,则为空。

    string=''
    if len(string)==0:
       print(len(string)) #0
       print("该字符串为空")#该字符串为空
    
  • 方式二:使用布尔上下文(Boolean context),在布尔上下文中,空字符串 ""、空列表 []、空元组 ()、空字典 {} 等都被视为False。因此,使用 not 关键字可以将空字符串转换为True,非空字符串转换为False。

    string=''
    if not string:
       print(not string) #True
       print("该字符串为空") #该字符串为空
    
  • 方式三:直接判断字符串是否为空。

    string=''
    if string == '':
       print(string == '') #True
       print("该字符串为空") #该字符串为空
    

判断字符串是否包含某一字符

  • 方式一:使用成员运算符in,如果字符串中包含给定的字符返回 True.。

    string='abcdefg'
    print('b' in string) # True
    
  • 方式二:使用成员运算符not in,如果字符串中不包含给定的字符返回 True。

    string='abcdefg'
    print('t' not in string)# True
    

字符串常用函数

函数 意义 示例
find(str, beg=0, end=len(string)) 检测 str 是否包含在字符串中,如果指定范围 beg 和 end ,则检查是否包含在指定范围内,如果包含,则返回字符的索引值,否返回-1 a = 'ABC' \n print(a.find('B'))#1
count(str, beg= 0,end=len(string)) 返回 str 在 string 里面出现的次数,如果 beg 或者 end 指定则返回指定范围内 str 出现的次数 a = 'ABBC'
print(a.count('B'))#2
replace(old, new [, max]) 把 将字符串中的 old 替换成 new,如果 max 指定,则替换不超过 max 次。 string = 'AAAABC'
print(string.replace('A', 'B'))#BBBBBC
split(str="", num=string.count(str)) 以 str 为分隔符截取字符串,如果 num 有指定值,则仅截取 num+1 个子字符串
len(string) 返回字符串长度
lower() 转换字符串中所有大写字符为小写 string = 'Hello World'
print(string.lower())#hello world
upper() 转换字符串中所有小写字符为大写 string = 'Hello World'
print(string.upper())#HELLO WORLD
swapcase() 将字符串中大写转换为小写,小写转换为大写 string = 'Hello World'
print(string.swapcase())#hELLO wORLD
isspace() 用于检查字符串是否仅由空格字符组成。(如果字符串为空,即不包含任何字符,则它不被视为仅由空格组成,因此返回False) string=' '
print(string.isspace())
isdigit() 如果字符串只包含数字则返回 True 否则返回 False. stirng='1234ABC'
print(stirng.isdigit())#False

标签:字符,String,Python,数据类型,print,为空,字符串,True,string
From: https://www.cnblogs.com/joudys/p/17695716.html

相关文章

  • python
    importrandomfromrandomimportchoiceops=('+','-','×','÷')ans=[]i=0whilei<42:op1=choice(ops)op2=choice(ops)n=random.randint(1,9)ifop1=='+'andop2=='+'......
  • python进阶 day09基本的文件处理
    基本的文件处理什么是文件?操作系统提供给用户的一个虚拟单位文件有什么用?存储数据找到文件路径path=r'D:\上海Python11期视频\python11期视频\day09\test.py'#鼠标右键点击文件,copypath复制路径双击打开f=open(path,'w')#r-->read只读;w-->只写,清......
  • Redis从入门到放弃(2):数据类型
    Redis从入门到放弃(2):数据类型 在Redis中,数据以键值对的形式存储。Redis支持五种主要的数据类型,每种类型都有不同的用途和特性。本文将介绍Redis的五种数据类型:字符串(string),哈希(hash),列表(list),集合(set)和有序集合(sortedset)。1.字符串(String)介绍字符串是Redis中最基本的数据......
  • python进阶 day09异常处理
    异常处理语法异常(错误都是SyntaxError)if#SyntaxError0=1#SyntaxErrortry:#尝试num=input('输入一个值')print(3)#代码自上而下,上面会运行1/int(num)#错误不影响其他的代码,报错马上终止try缩进里面的代码print(4)exceptZeroDivisionE......
  • 同时安装python2和python3的切换与配置
    windows环境下同时安装了python2和python3,通过命令行窗口运行python脚本:1、python调用py-2调用python2py-3调用python3python脚本需要在python2下运行,在脚本前加上,然后运行pyxxx.py#!python2python脚本需要在python3下运行,在脚本前加上,然后运行pyxxx.py#!python3......
  • 比Python快6.8万倍,新语言Mojo首次开放下载,LLVM之父打造
    比Python快6.8万倍,新语言Mojo首次开放下载,LLVM之父打造投递人 itwriter 发布于 2023-09-1023:10 评论(5) 有428人阅读 原文链接 [收藏] « »梦晨发自凹非寺量子位公众号QbitAI什么编程语言,敢号称是高性能版的“Python++”?新语言Mojo,来自LLVM......
  • python第一行
    python第一行一般python脚本的开通会写成#!/usr/bin/python这表示用/usr/bin目录下的这个python可执行文件来进行运行脚本当然如果你还安装了其他版本的python,可以将第一行指向python的可执行文件,比如#!/software/public/python/3.7.0/bin/python3.7or#!/software/public/......
  • java.lang.ClassCastException: java.sql.Timestamp cannot be cast to java.lang.Str
    这个问题来自于想把从数据库查询的数据转化为字符串,方便后面做时间比较,显示格式转化错误 sql改造部分 as的左边为我的sql语句语法使用如下DATE_FORMAT((sql语句),'%Y-%m-%d%H:%i:%s')如果是涉及时间的计算,可以考虑如下方式BigDecimala=(BigDecimal)sprint......
  • Python - 网页自动化
    一、环境准备Selenium安装命令行安装pipinstallselenium浏览器驱动安装找到本地chrome的浏览器的版本查看谷歌浏览器的版本号下载相应版本的驱动器,chrome浏览器驱动下载地址:chromedriver.storage.googleapis.com/index.html下载完后,解压到本地的python的目......
  • datetime:Python日期与时间值管理计算
    前言datetime库也用于时间日期的处理,主要用于完成日期和时间的解析,格式化和算术运算。本篇,将完整的介绍datetime库的应用知识。datetime.date与time库一样,datetime库也有获取当前日期的类,日历日期值用datetime.date表示。比如datetime.date.today()。具体代码如下:importdate......