本文献给Python初学者,相关python语法均已整理,欢迎阅读参考,一起进步
初识python请参考
:Python入门语法
一.python中字符串的格式
- 如下定义的变量a,存储的是
数字类型
的值
a = 100
- 如下定义的变量b,存储的是
字符串类型
的值
b = "hello"
或者
b = 'hello'
双引号或者单引号中的数据,就是字符串
二.python中字符串输出
name = 'Tom'
position = '讲师'
address = '北京市'
print('--------------------------------------------------')
print("姓名:%s" % name)
print("职位:%s" % position)
print("公司地址:%s" % address)
print('--------------------------------------------------')
--------------------------------------------------
姓名: itheima
职位: 讲师
公司地址: 北京市
--------------------------------------------------
三.python中字符串输入
之前在学习input的时候,通过它能够完成从键盘获取数据,然后保存到指定的变量中;
- 注意:input获取的数据,
都以字符串的方式进行保存
,即使输入的是数字,那么也是以字符串方式保存
userName = input('请输入用户名:')
print("用户名为:%s" % userName)
password = input('请输入密码:')
print("密码为:%s" % password)
请输入用户名:Tom
用户名为:Tom
请输入密码:123
密码为:123
四.下标和切片
下标索引
- 所谓“下标”,就是编号,就好比超市中的存储柜的编号,通过这个编号就能找到相应的存储空间
字符串中"下标"的使用
- 列表与元组支持下标索引好理解,字符串实际上就是字符的数组,所以也支持下标索引。
- 如果有字符串:name = ‘abcdef’,在内存中的实际存储如下:
- 如果想取出部分字符,那么可以通过下标的方法,(注意python中下标从 0 开始)
name = 'abcdef'
print(name[0])
print(name[1])
print(name[2])
a
b
c
- 切片
切片是指对操作的对象截取其中一部分的操作。字符串、列表、元组都支持切片操作。
- 切片的语法:[起始:结束:步长]
- 注意:选取的区间从”起始”位开始,到”结束”位的前一位结束(不包含结束位本身),步长表示选取间隔。
name = 'abcdef'
print(name[0:3]) # 取 下标0~2 的字符
abc
- Demo
name = 'abcdef'
print(name[0:3]) # 取 下标0~2 的字符
# abc
print(name[0:-1])
# abcde
print(name[0:-2])
# abcd
print(name[:2])
# ab
print(name[::2])
# ace
print(name[1:5:2])
#bd
- 面试案例
# 索引是通过下标取某一个元素
# 切片是通过下标去某一段元素
s = 'Hello World!'
print(s[4])
print(s)
print(s[:]) # 取出所有元素(没有起始位和结束位之分),默认步长为1
print(s[1:]) # 从下标为1开始,取出 后面所有的元素(没有结束位)
print(s[:5]) # 从起始位置开始,取到 下标为5的前一个元素(不包括结束位本身)
print(s[:-1]) # 从起始位置开始,取到 倒数第一个元素(不包括结束位本身)
print(s[-4:-1]) # 从倒数第4个元素开始,取到 倒数第1个元素(不包括结束位本身)
print(s[1:5:2]) # 从下标为1开始,取到下标为5的前一个元素,步长为2(不包括结束位本身)
# python 字符串快速逆置
print(s[::-1]) # 从后向前,按步长为1进行取值
o
Hello World!
Hello World!
ello World!
Hello
Hello World
rld
el
!dlroW olleH
想一想 (面试题)给定一个字符串aStr, 请反转字符串
五.字符串常见操作
如有字符串mystr = ‘hello world itcast and itcastcpp’,以下是常见的操作
- <1>find
- 检测 str 是否包含在 mystr中,如果是返回开始的索引值,否则返回-1
mystr = 'hello world itcast and itcastcpp'
print(mystr.find('world'))
# 6 输出的为第一个字母的索引位子
print(mystr.find('k'))
# -1 没有则返回-1
print(mystr.find('world',0,10))
# -1 指定在索引在0到10的位置找 没有则返回-1
- <2>index
- 跟find()方法一样,只不过如果str不在 mystr中会报一个异常.
mystr = 'hello world itcast and itcastcpp'
print(mystr.find('world',0,10))
# -1 指定在索引在0到10的位置找 没有则返回-1
print(mystr.index('world',0,10))
#异常 指定在索引在0到10的位置找
-1
Traceback (most recent call last):
File "D:/Phython/study/venv/Include/hello.py", line 6, in <module>
print(mystr.index('world',0,10))
ValueError: substring not found
Process finished with exit code 1
- <3>count
- 返回 str在start和end之间 在 mystr里面出现的次数
mystr = 'hello world '
print(mystr.count('l'))
# 3 返回l出现的次数
- <4>replace
- 把 mystr 中的 str1 替换成 str2,如果 count 指定,则替换不超过 count 次.
mystr = "hello world ha ha"
print(mystr.replace("ha", "Ha", 1))
# 替换字符串 规定次数一次
hello world Ha ha
- <5>split
- 以 str 为分隔符切片 mystr,如果 maxsplit有指定值,则仅分隔 maxsplit 个子字符串
mystr = "hello world ha ha"
print(mystr.split(" ", 1) )
# 替换字符串 规定次数一次
#['hello', 'world ha ha']
print(mystr.split(" ", 2) )
# 替换字符串 规定次数2次
#['hello', 'world', 'ha ha']
- <6>capitalize
- 把字符串的第一个字符大写
mystr = "hello world ha ha"
print(mystr.capitalize())
#Hello world ha ha
Hello world ha ha
- <7>title
- 把字符串的每个单词首字母大写
mystr = "hello world ha ha"
print(mystr.title())
Hello World Ha Ha
- <8>startswith
- 检查字符串是否是以 hello 开头, 是则返回 True,否则返回 False
mystr = "hello world ha ha"
print(mystr.startswith("hello"))
True
- <9>endswith
- 检查字符串是否以obj结束,如果是返回True,否则返回 False.
# 语法
mystr.endswith(obj)
mystr = "hello world ha ha"
print(mystr.endswith("ha"))
print(mystr.endswith("hello"))
True
False
- <10>lower
- 转换 mystr 中所有大写字符为
小写
mystr = "Hello World Ha Ha"
print(mystr.lower())
#hello world ha ha
print(mystr.upper())
#HELLO WORLD HA HA
hello world ha ha
HELLO WORLD HA HA
- <11>upper
- 转换 mystr 中的小写字母为
大写
mystr = "Hello World Ha Ha"
print(mystr.lower())
#hello world ha ha
print(mystr.upper())
#HELLO WORLD HA HA
hello world ha ha
HELLO WORLD HA HA
- <12>ljust
- 返回一个原字符串左对齐,并使用空格填充至长度 width 的新字符串
- <13>rjust
- 返回一个原字符串右对齐,并使用空格填充至长度 width 的新字符串
- <14>center
- 返回一个原字符串居中,并使用空格填充至长度 width 的新字符串
- <15>lstrip
- 删除 mystr 左边的空白字符
- <16>rstrip
- 删除 mystr 字符串末尾的空白字符
- <17>strip
- 删除mystr字符串两端的空白字符
mystr = " Hello "
print(mystr.strip())
Hello
- <18>rfind
- 类似于 find()函数,不过是
从右边开始查找
.
mystr = "Hello"
print(mystr.rfind("o"))
4
- <19>rindex
- 类似于 index(),不过是从右边开始.
mystr = "Hello"
print(mystr.rindex("o"))
4
- <20>partition
- 把mystr以str分割成三部分,str前,str和str后
mystr = "Hello World"
print(mystr.partition("e"))
('H', 'e', 'llo World')
- <21>rpartition
- 类似于 partition()函数,不过是从右边开始.
mystr = "Hello World"
print(mystr.rpartition("o"))
('Hello W', 'o', 'rld')
- <22>splitlines
- 按照行分隔,返回一个包含各行作为元素的列表
mystr = "Hello \n World"
print(mystr.splitlines())
['Hello ', ' World']
- <23>isalpha
- 如果 mystr 所有字符都是字母 则返回 True,否则返回 False
mystr = "hello"
mystr1 = "123"
print(mystr.isalpha())
print(mystr1.isalpha())
True
False
- <24>isdigit
- 如果 mystr 只包含数字则返回 True 否则返回 False.
mystr = "hello"
mystr1 = "123"
print(mystr.isdigit() )
print(mystr1.isdigit() )
False
True
- <25>isalnum
- 如果 mystr 所有字符都是字母或数字则返回 True,否则返回 False
mystr = "hello123"
mystr1 = "12 3"
print(mystr.isalnum())
print(mystr1.isalnum())
True
False
- <26>isspace
- 如果 mystr 中只包含空格,则返回 True,否则返回 False.
mystr = "hello123"
mystr1 = "12 3"
mystr2 = " "
print(mystr.isspace() )
print(mystr1.isspace() )
print(mystr2.isspace() )
False
False
True
- <27>join
- mystr 中每个元素后面插入str,构造出一个新的字符串
str = " "
str1 = "-"
li = ["my","name","is","Tom"]
print(str.join(li))
print(str1.join(li))
my name is Tom
my-name-is-Tom
The best investment is in yourself
2020.03.31 记录辰兮的第42篇博客
今天的文章python 字符变量_r语言定义变量分享到此就结束了,感谢您的阅读,如果确实帮到您,您可以动动手指转发给其他人。
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。
如需转载请保留出处:https://bianchenghao.cn/54414.html