目录
字符串
字符串的表示方式
普通字符串
原始字符串
长字符串
字符串与数字相互转换
将字符串转换为数字
将数字转换为字符串
格式化字符串
占位符%
format方法
f-strings
操作字符串
字符串拼接
字符串查找
字符串替换
字符串分割
去处字符串两边的指定字符
字符串
字符串的表示方式
普通字符串
在C语言中使用双引号表示字符串,单引号只能表示字符,而在python中两者皆可
转义字符的用法与C语言的用法一致,但是python却可以直接打印字符--原始字符串
原始字符串
目的就是让转义字符的功能失效,成为一个单纯的字符而已,就是单纯的在字符串前面加r'
长字符串
在C语言中如果一个字符串太长,我们使用多行的话,我们可以使用\来表示
字符串与数字相互转换
将字符串转换为数字
C语言提供了几个标准库函数,可以将字符串转换为任意类型 (整型、长整型、浮点型等)的数字。 atoi ()函数将字符串转换为整数,atoi ()函数只有一个参数,即要转换为数字的字符串,atoi ()函数的返回值就是转换所得的整型值。
在C语言中实现这个功能需要使用函数来实现,而在python中实现却很简单,直接使用int和float即可,更方便形象
如果需要把字符串中的字符转换为整数的话,需要在int中说明16进制ab
将数字转换为字符串
格式化字符串
占位符%
这个与C语言是一样的,比如我们想输出今天的日期是2023/1/22,并且年月日都是变量,那么使用C语言就是printf("今天的日期是%d/%d/%d\n",year,monther,day);
但是在python中就有点不太一样了
python:print("今天的日期是%d/%d/%d"%(year,monther,day))。与C语言相比,无非就是多加了%而已,其实这种形式最贴近C语言的输出形式使用(个人觉得)
format方法
上面我们说使用%的时候,需要注意类型与占位符的匹配问题(常常是因为没对准),在C语言的初学中,我们常常会因为这个问题,导致出现数据输出错误,而python很好,直接帮我们解决了这个问题,这个方法可以避免我们出现匹配问题,对初学者很好,但是我觉得如果你喜欢C语言的表达形式的话,你可以直接使用占位符的方式
它这里不需要写占位符,并且不需要按照顺序来写变量,而是可以直接在{}写编号对应,比C语言的更强
今天的日期是2023/1/22--
print("今天的日期是{}/{}/{}".format(year,monther,day)) 不要忘记format前面有一个.
print("今天的日期是{1}/{2}/{0}".format(day,year,monther))
f-strings
print(f' "今天的日期是{year}/{monther}/{day}")
操作字符串
在C语言中存在字符串无非就是使用一些函数入长度、比较、连接等处理,而在python中同样是实现这些操作,但在python中这些操作更简单,C语言的使用会稍微比python更复杂,python实现C语言的功能都对用户来说都很简单
字符串拼接
这个拼接在前面的序列拼接中也存在,两者可以直接使用+进行连接,不像C语言一样,需要使用函数实现,而python内部直接帮我们实现了所有,屏蔽了我们--面向对象的编程舒服点
字符串查找
查找hello wrold中的lo a = "hello world" a.find("lo") --可以指定位置范围,以提高效率 3 --返回值为索引号(下标号) a.find('l',3,6) 3 a.find('l',4,9) //包括开头的索引,但是不包括结尾的索引 -1 a.find('l',4,8) -1 a.find('l',4,10) //下标为9的字符为’l',因此你需要写10 9
字符串替换
字符串分割
去处字符串两边的指定字符
这个功能在C语言的计算机二级考试中经常存在,C语言没有函数实现,而在python中已经帮我们实现好了
总结
虽然字符串在语言的使用中很常见,但是我觉得在单片机的使用中很少见,就像51单片机一样,字符串的使用我基本很少见(也许是自己眼界不行)