在Python中用单引号,或双引号括起来的内容就是字符串。以下几种均为字符串:

"我是世界上最美丽的人"
'我是世界上最美丽的人'
'35222'
"True"
'3.141592753'

字符串的方法比较多,大家要多多敲多练习

一、如何定义字符串

a = '啦啦啦'
        b = "啦啦啦啦"
        c = str("啦啦啦")

二、如何输出一个字符串

print("字符串")
        name = "老王"
        print("我的名字叫{}".format(name))
        print("我的名字叫%s"%name)

三、字符串的拼接

字符串可以直接用 + 号拼接,同样可以使用 format 函数或者 % 符号格式化拼接。

age = 18
name = '美丽'

方法一:
print("{}老师今年{}岁".format(name,age))

方法二:
print("%s今年%d岁"%(name,age))

方法三:
text = "yes"
name = "美丽的人"
text.join(name) # 美yes丽yes的yes人

方法四:
a = "世界上"
b = "最美丽的人"
print(a+b) # 世界上最美丽的人

四、字符串的截取

字符串中的每一个字符都有一个默认的索引值;

从左到右默认从 0 开始,依次递增;

从右往左默认从 -1 开始,依次递增;

python 根据名字字符串获取变量值 python用字符串写自己的名字_代码示例

代码示例:

txt = "不是在最美好的时光遇见你,而是遇见你以后都是最美好的时光"

print(len(txt))  
# 内置函数 len() 获取字符串长度
# 输出内容:28

print(txt)       
# 打印字符串
# 输出内容:不是在最美好的时光遇见你,而是遇见你以后都是最美好的时光

print(txt[2])    
# 获取字符串中的第三个字符
# 输出内容:在

print(txt[0:2])  
# 截取字符串索引值为0~1的字符,不包括索引值为2的字符
# 输出内容:不是

print(txt[2:5])  
# 截取字符串索引值为2~4的字符,不包括索引值为5的字符
# 输出内容:在最美

print(txt[2:-1]) 
# 截取字符串重索引值为2开始直到字符串结尾的前一个,-1的索引值表示最后一个
# 输出内容:在最美好的时光遇见你,而是遇见你以后都是最美好的时

print(txt[2:len(txt)]) 
# 截取字符串重索引值为2开始直到字符串结尾
# 输出内容:在最美好的时光遇见你,而是遇见你以后都是最美好的时光

print(txt[:4])   
# 截取在列表中索引值为0-4的数据,冒号前面不设置参数,默认从0开始,注意截取并不包括4
# 输出内容:不是在最

print(txt[2:])   
# 截取在列表中索引值为2-末尾的数据,冒号后面不设置参数,默认截取到最后一位数据,注意截取包括最后一位
# 输出内容:在最美好的时光遇见你,而是遇见你以后都是最美好的时光

print(txt[::-1]) 
# 从后往前截取所有内容,-1为步长
# 输出内容:光时的好美最是都后以你见遇是而,你见遇光时的好美最在是不

print(txt[290])  
# 下标越界
# 输出内容:IndexError: string index out of range ,下标越界(超过了范围)

总结:

1、str[开始:结束:步长] 步长默认从左往右,如果步长为-1从右往左

2、单个取出: str_01[下标] 通过下标可以取出字符串里面的字符,下标从0开始 (默认从左往右)

3、多个取出: str_01[开始下标:结束下标] 包含开始,不包含结束,

如果开始不写,默认从0开始,

如果结束不写,默认到结尾 (默认从左往右)

4、从后往前取: 将步长改成 -1

5、统计字符串的长度:len(字符串)

五、字符串的运算

在成员运算符中,in 和 not in ,主要的作用就是用于检测字符串中是否存在某个字符或字符串,如果存在,则返回True ,不存在则返回 False。

代码示例:

# 定义字符串
myStr = "I'm the beautiful girl"

print("is" in myStr)     # False
print("is" not in myStr) # True

上面只是判断存不存在,如何在字符串中查找某一个字符或字符串出现的次数、位置、是否存在某特定字符以及字符串的开头,字符串是否为纯数字、字母、包含特殊符号呢?

代码示例:

# 定义字符串
myStr = "I'm the beautiful girl,my name is beauti."

# find的运用:
print("从myStr中查找is的下标,位置在:",myStr.find("is") )
# 从myStr中查找is,默认从左往右查找,如果找到返回第一次出现的下标,如果不存在返回 -1
# 输出结果:从myStr中查找is的下标,位置在: 31

# rfind的运用:
print("从myStr中查找is的下标,位置在:",myStr.rfind("is"))
# 从myStr中查找is,右往左查找,如果找到返回第一次出现的下标,如果不存在返回 -1
# 输出结果:从myStr中查找is的下标,位置在: 31

# index的运用:
print("从myStr中查找is的下标,位置在:",myStr.index("is"))
# 从myStr中查找is的下标,默认从左往右,如果找到返回第一次出现的下标,如果找不到就报错
# 输出结果:从myStr中查找is的下标,位置在: 31

# rindex的运用
print("从myStr中查找is的下标,位置在:",myStr.rindex("is"))
# 从myStr中查找is的下标,右往左查找,如果找到返回第一次出现的下标,如果找不到就报错
# 输出结果:从myStr中查找is的下标,位置在: 31

# count的运用:
print("从myStr中统计is出现的个数:",myStr.count("is"))
# 从myStr中统计is出现的个数,如果存在返回个数,如果不存在返回0
# 输出结果:从myStr中统计is出现的个数: 1

# startswith的运用:
str2 = "http://www.baidu.com.html"
print("判断str2是否以 http 开头:",str2.startswith("http"))
# 判断str2是否以http开头
# 输出结果:判断str2是否以 http 开头: True

# endswith的运用:
print("判断str2是否以 html 结束:",str2.endswith("html"))
# 判断str2是否以 html 结束
# 输出结果:判断str2是否以 html 结束: True

# isalpha的运用:
print("判断fdasf是否是纯字母:","fdasf".isalpha())
# 判断是否是纯字母
# 输出结果:判断fdasf是否是纯字母: True

# isdigit的运用:
print("判断23232是否是纯数字:","23232".isdigit())
# 判断是否是纯数字
# 输出结果:判断23232是否是纯数字: True

# isalnum 的运用:
print("判断fdaf 13是否含有特殊字符:","fdaf 13".isalnum())
# 判断是否含有特殊字符
# 输出结果:判断fdaf 13是否含有特殊字符: False

# 将myStr字符串在50长度的空间向右看齐
print(myStr.rjust(50))
# 输出结果:         I'm the beautiful girl,my name is beauti..

# 将myStr字符串在50长度的空间向左看齐
print(myStr.ljust(50))
# 输出结果:I'm the beautiful girl,my name is beauti.         .

# 将myStr字符串在50长度的空间居中显示
print(myStr.center(50))
# 输出结果:    I'm the beautiful girl,my name is beauti.     .

字符串的替换和分割

代码示例:

# 定义字符串
myStr = "I'm the beautiful girl,\n my name is beauti."

# replace的运用
print(myStr.replace("is", "IS"))
# 将myStr中所有的is替换成IS,对原来的数据不会产生改变
# 输出结果:I'm the beautiful girl,my name IS beauti.

# split 的运用:
print(myStr.split(","))
# 将myStr按照","号进行切割成若干个部分;输出的是个列表
# 输出结果:["I'm the beautiful girl", 'my name is beauti.']

# splitlines 的运用:
print(myStr.splitlines())
# 将myStr按照换行符 \n 进行切割,输出的是列表
# 输出结果:["I'm the beautiful girl,", ' my name is beauti.']
print(myStr.splitlines(True))
# 将myStr按照换行符 \n 进行切割,并且保留换行符 \n ,输出的是列表
# 输出结果:["I'm the beautiful girl,\n", ' my name is beauti.']

# 定义字符串
name = " 我 的 小 宝 贝 我 的 小 宝 贝1 我 的 小 宝 贝2  "

# partition 的运用
print(name.partition("小"))
# 将字符串name按照默认从左往右出现的第一个"小"分割成若干部分,小没有删除,输出的是元祖
# 输出结果:(' 我 的 ', '小', ' 宝 贝 我 的 小 宝 贝1 我 的 小 宝 贝2')

# rpartition 的运用:
print(name.rpartition("小"))
# 将字符串name按照从右往左出现的第一个"小"分割成若干部分,小没有删除,输出的是元祖
# 输出结果:(' 我 的 小 宝 贝 我 的 小 宝 贝1 我 的 ', '小', ' 宝 贝2')

# lstrip 的运用:
print(name.lstrip())
# 去除字符串name左边的空格
# 输出结果:我 的 小 宝 贝 我 的 小 宝 贝1 我 的 小 宝 贝2  .

# rstrip 的运用:
print(name.rstrip())
# 去除字符串name右边的空格
# 输出结果: 我 的 小 宝 贝 我 的 小 宝 贝1 我 的 小 宝 贝2.

# strip 的运用:
print(name.strip())  
# 去除字符串两边的空格
# 输出结果:我 的 小 宝 贝 我 的 小 宝 贝1 我 的 小 宝 贝2.

字符串的大小写

代码示例:

# 定义字符串
myStr = "i'm the Beautiful girl,My name is beauti."

# capitalize 的运用:
print(myStr.capitalize())
# 将字符串myStr的首字母大写
# 输出结果:I'm the beautiful girl,my name is beauti.

# title 的运用:
print(myStr.title())
# 将字符串的每一个单词的首字母大写
# 输出结果:I'M The Beautiful Girl,My Name Is Beauti.

# lower 的运用:
print(myStr.lower())
# 将字符串统一转化成小写字母
# 输出结果:i'm the beautiful girl,my name is beauti.

# upper 的运用:
print(myStr.upper())
# 将字符串统一转化成大写字母
# 输出结果:I'M THE BEAUTIFUL GIRL,MY NAME IS BEAUTI.

案例:把字符串转换成列表

代码示例:

# 定义字符串
str = "你 是 不 是 我 最 疼 爱 的 人"
# 思路:通过空格进行切割,返回是列表

print(str.split(" "))
# 输出结果:['你', '是', '不', '是', '我', '最', '疼', '爱', '的', '人']

案例:把字符串转化成字典

代码示例:

# 定义字符串
str1 = '{"name":"老王","age":18,"addr":"长沙" }'
# eval就是把字符串转化成Python表达式
dict1 = eval(str1)
print("dict1的类型是{},{}".format(type(dict1),dict1))
# 输出结果:dict1的类型是<class 'dict'>,{'name': '老王', 'age': 18, 'addr': '长沙'}