前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >ESP8266上的MicroPython入门(7)

ESP8266上的MicroPython入门(7)

作者头像
云深无际
发布2021-04-14 14:21:39
7460
发布2021-04-14 14:21:39
举报
文章被收录于专栏:云深之无迹云深之无迹

接下来得小节是讲常见得模块得用法,就是要学习轮子得用法.

1. dir(obj)

函数说明:查看对象中所有属性和函数。 示例:

代码语言:javascript
复制
>>> import sys
>>> dir(sys)
['__name__', 'path', 'argv', 'version', 'version_info', 'implementation', 'platform', 'byteorder', 'maxsize', 'exit', 'stdin', 'stdout', 'stderr', 'modules', 'print_exception']
>>> dir(sys.argv)
['append', 'clear', 'copy', 'count', 'extend', 'index', 'insert', 'pop', 'remove', 'reverse', 'sort']
2. encode()

函数说明:将字符串转化为字符编码,并返回一个字节数组。 示例:

代码语言:javascript
复制
>>> str = "DFRobot"
>>> strEn = str.encode()
>>> print(strEn)
b'DFRobot'
>>>
>>> print(str[1])
F
>>> print(strEn[1])
70
3. find(str[, beg=0, end=len(s)-1])

函数说明:从左向右查找字符串中是否有str子字符串,如果有则返回第一次出现子字符串的位置下标,否则返回-1。 如果没有指定第二个和第三个参数,则默认是从字符串下标0开始查找,直到字符串结束。 示例:

代码语言:javascript
复制
>>> str = "DFRobot"
>>> print( str.find("bo") )
4
>>> print(str.find("Bo"))
-1

如果指定了第二个参数beg,则会从字符串下标beg的位置开始查找,如果指定了三个参数end,则会在字符串下标end的位置结束查找。 示例:

代码语言:javascript
复制
>>> str = "DFRobot"
>>> print(str.find("o", 1))
3
>>> print(str.find("o", 3, 6))
3
4. rfind(str[, beg=0, end=len(s)-1])

函数说明:从左向右查找字符串中是否有str子字符串,如果有则返回最后一次出现子字符串的位置下标,否则返回-1。 如果没有指定第二个和第三个参数,则默认是从字符串下标0开始查找,直到字符串结束。 示例:

代码语言:javascript
复制
>>> str = "DFRobot"
>>> print(str.rfind("o"))
5
>>> print(str.rfind("B"))
-1

如果指定了第二个参数beg,则会从字符串下标beg开始查找,如果指定了三个参数end,则会在字符串下标end结束查找。 示例:

代码语言:javascript
复制
>>> str = "DFRobot"
>>> print(str.find("o", 1))
3
>>> print(str.rfind("o", 4, 6))
5
5. index(str[, beg=0, len=len(s)-1])

函数说明:从左向右查找字符串中是否有str子字符串,如果有则返回第一次出现子字符串的位置下标,如果没有找到,系统会抛出异常”ValueError: substring not found”提示没有找到这个子字符串,并且终断程序执行。 如果没有指定第二个和第三个参数,则默认从字符串下标0开始查找,如果直到字符串末尾还没有找到,系统就会抛出异常。 示例:

代码语言:javascript
复制
>>> str = "DFRobot"
>>> print(str.index("o"))
3
>>> print(str.index("B"))
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
ValueError: substring not found

如果指定了第二个参数beg,则会从字符串下标beg开始查找,如果指定了三个参数end,则会在字符串下标end结束查找。 示例:

代码语言:javascript
复制
>>> str = "DFRobot"
>>> print(str.index("o", 2))
3
>>> print(str.index("o", 4, 3))
5
6. rindex(str[, beg=0, len=len(s)-1])

函数说明:从左向右查找字符串中是否有str子字符串,如果找到则返回最后一次出现子字符串的位置下标,如果没有找到,系统会抛出异常”ValueError: substring not found”提示没有找到这个子字符串,并且终断程序执行。 如果没有指定第二个和第三个参数,则默认从字符串下标0开始查找,如果直到字符串末尾还没有找到,系统就会抛出异常。 示例:

代码语言:javascript
复制
>>> str = "baidu"
>>> print(str.rindex("o"))
5
>>> print(str.rindex("B"))
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
ValueError: substring not found

如果指定了第二个参数beg,则会从字符串下标beg开始查找,如果指定了三个参数end,则会在字符串下标end结束查找。 示例:

代码语言:javascript
复制
>>> str = "baidu"
>>> print(str.rindex('o', 2))
5
>>> print(str.rindex('o', 0, 4))
3
7. str.join(a)

函数说明:将字符串、元组、列表或字典中的元素以指定的字符(或字符串)连接。

代码语言:javascript
复制
str:分隔符
a:要连接的列表、元组、字典、字符串等。

示例:

代码语言:javascript
复制
>>> a = ["hello", "world", "hello", "baidu"]
>>> str = ':'
>>> print(str.join(a))
'hello:world:hello:baidu'
>>>
>>> a = "hello world"
>>> print(' '.join(a))
'h e l l o   w o r l d'
8. str.split(a[, num])

函数说明:拆分字符串。通过指定分隔符对字符串进行切片,以列表的形式返回被分割的字符串碎片。

代码语言:javascript
复制
str:分隔符
num:分割次数,
    注意:如果存在参数num,则仅分隔成 num+1 个子字符串

注意: 当使用空格作为分隔符时,对于中间为空的项会自动忽略。 示例:

代码语言:javascript
复制
>>> str = "www.baidu.com.cn"
>>> print(str.split('.'))
['www', 'baidu', 'com', 'cn']
>>> 
>>> print(str.split('.', 1))
['www', 'baidu.com.cn']
>>> 
>>> print(str.split('.', 3))
['www', 'baidu', 'com', 'cn']
>>> 
>>> print(str.split('.', 3)[2])
com
9. splitlines([keepends=False])

函数说明:以换行符(\r)或回车符(\n)为标志分割对象字符串,以列表的形式返回被分割的子字符串。

代码语言:javascript
复制
keepends:是否保留分隔符号
    True、False

示例:

代码语言:javascript
复制
>>> str = "www\baidu\ncom\rnrcn\r\rhello"
>>> print(str.splitlines())  #不保留分隔符
['www', 'baidu', 'com', 'nrcn', '', 'hello']
>>> 
>>> print(str.splitlines(True))  #保留分隔符
['www\r', 'baidu\n', 'com\r', 'nrcn\r', '\r', 'hello']
10. rsplit(str, num)

函数说明:拆分字符串。通过指定分隔符对字符串进行切片(从右到左),以列表的形式返回被分割的子字符串。

注意: 不会返回分隔符

代码语言:javascript
复制
str:分割标志
num:分割次数

示例:

代码语言:javascript
复制
>>> str = "www.baidu.com.cn"
>>> print(str.rsplit('.'))
['www', 'baidu', 'com', 'cn']
>>> 
>>> print(str.rsplit('.', 1))
['www.baidu.com', 'cn']
>>> 
>>> print(str.rsplit('.', 3))
['www', 'baidu', 'com', 'cn']
11. startswith(str[, beg])

函数说明:用于检查字符串是否以指定字符串开头,如果是则返回 True,否则返回 False。

代码语言:javascript
复制
str:待检查的字符串
beg:开始检查的位置(字符串下标)。

示例:

代码语言:javascript
复制


>>> str = "www.baidu.com.cn"
>>> print(str.startswith('ba'))
False
>>> print(str.startswith('ba', 1) )
False
>>> print(str.startswith('df', 4))
True
12. endswith(str)

函数说明:用于检查字符串是否以指定字符串结尾,如果是返回True,否则返回False。 示例:

代码语言:javascript
复制
>>> str = "www.baidu.com.cn"
>>> print(str.endswith('com') )
False
>>> print(str.endswith('cn'))
True
13. strip([str])

函数说明:去掉字符串头尾指定的字符串(默认为空格)。成功返回去掉指定字符的字符串,否则返回原字符串。 示例:

代码语言:javascript
复制


>>> str = "www.baidu.com.cn"
>>> print(str.strip()) #去掉空格
www.baidu.com.cn
>>> print(str.strip('www') )
.baidu.com.cn
>>> print(str.strip('.cn'))
www.baidu.com
>>> print(str.strip('com')) #失败,返回原字符串
www.baidu.com.cn
14. lstrip([str])

函数说明:去掉字符串左边指定字符串(默认为空格),返回新的字符串,如果没有找到所指定的字符串,则返回原字符串。 示例:

代码语言:javascript
复制
>>> str = "    www.dfrobot.com.cn"
>>> print(str.lstrip())  #去掉空格
www.dfrobot.com.cn
>>> str = "www.dfrobot.com.cn"
>>> print(str.lstrip('w'))
.dfrobot.com.cn
15. rstrip([str])

函数说明:去掉字符串右边指定字符串(默认为空格),返回新的字符串,如果没有找到所指定的字符串,则返回原字符串。 示例:

代码语言:javascript
复制
>>> str = "www.dfrobot.com.cn  "  #去掉空格
>>> print(str.rstrip())
www.dfrobot.com.cn
>>> 
>>> str = "www.dfrobot.com.cn"
>>> print(str.rstrip('.com.cn'))
www.dfrobot
16. format(*args)

函数说明:字符串格式化函数。 format()函数可以接受不限个参数,位置可以不按顺序。 示例:

代码语言:javascript
复制
>>> print( "{}{}".format("hello", "world") )
helloworld
>>> print( "{1} {0} {1}".format("hello", "world") )
world hello world
>>> print( "1+2={0}, 1*2={1}".format(3, 2) )
1+2=3, 1*2=2

format()函数也可以设置参数。 示例:

代码语言:javascript
复制
>>> str = "web_name:{name}, address:{url}"
>>> site = {"name":"DFRobot", "url":"www.dfrobot.com.cn"}
>>> print(str.format(**site))
web_name:DFRobot, address:www.dfrobot.com.cn
>>> 
>>> print(str.format(name="DFRobot", url="www.dfrobot.com.cn"))
web_name:DFRobot, address:www.dfrobot.com.cn

数字格式化,更多的用法这里不做介绍。 示例:保留小数点后两位

代码语言:javascript
复制
>>> print("{:.2f}".format(3.1415926))
3.14
17. replace(old, new[, num])

函数说明:字符串替换。

代码语言:javascript
复制
old:被替换的字符串
new:替换的字符串
num:替换的次数

示例:

代码语言:javascript
复制
>>> str = "aabbaa"
>>> print(str.replace("aa", "ee"))   #将aa替换成ee
eebbee
>>> print(str.replace("aa", "ee", 1))  #将第一次出现的aa替换成ee
eebbaa
18. count(str[, beg, end])

函数说明:统计字符串里某个字符串出现的次数。

代码语言:javascript
复制
beg(end):开始(结束)统计的字符串位置。

示例:

代码语言:javascript
复制
>>> str = "DFRobot"
>>> print(str.count('o'))
2
>>> print(str.count('o', 4))
1
>>> print(str.count('o', 1, 2))
0
19. partition(str)

函数说明:根据指定的分隔符将字符串进行分割(从左往右),并返回第一次出现的位置。

注意: 如果字符串包含指定的分隔符,则返回一个3元的元组,第一个为分隔符左边的子串,第二个为分隔符本身,第三个为分隔符右边的子串。示例:

代码语言:javascript
复制
>>> str = "Be brave! Break things! Learn and have fun!"
>>> print(str.partition('!'))
('Be brave', '!', ' Break things! Learn and have fun!')
20. rpartition(str)

函数说明:与partition()函数类似,只是分隔方向是从右往左。 示例:

代码语言:javascript
复制
>>> str = "DFRobot"
>>> print(str.rpartition('o'))
('DFRob', 'o', 't')
21. center(num)

函数说明:在字符串两边填充多个空格。

代码语言:javascript
复制
num:填充空格的个数

示例:

代码语言:javascript
复制
>>> str = "hello"
>>> print(str.center(14), 'flag')
    hello      flag
22. lower()

函数说明:将字符串中所有大写字母转换为小写。 示例:

代码语言:javascript
复制
>>> str = "Be brave! Break things! Learn and have fun!"
>>> print(str.lower())
'be brave! break things! learn and have fun!'
23. upper()

函数说明:将原字符串中所有小写字母转换为大写。 示例:

代码语言:javascript
复制
>>> str = "Be brave! Break things! Learn and have fun!"
>>> print(str.upper())
'BE BRAVE! BREAK THINGS! LEARN AND HAVE FUN!'
24. isspace()

函数说明:检测字符串是否只由空格组成,如果字符串中只包含空格,则返回 True,否则返回 False。 示例:

代码语言:javascript
复制
>>> str = "Be brave! Break things! Learn and have fun!"
>>> print(str.isspace())
False
>>> str = "            "
>>> print(str.isspace())
True
25. isalpha()

函数说明:检测字符串是否只由字母组成,如果是则返回True,否则返回False。 示例:

代码语言:javascript
复制
>>> str = "Be brave! Break things! Learn and have fun!"
>>> print(str.isalpha())
False
>>> str = "BebraveBreakthingsLearnandhavefun"
>>> print(str.isalpha())
True
26. isdigit()

函数说明:检测字符串是否只由数字组成,如果是则返回True,否则返回False。 示例:

代码语言:javascript
复制
>>> str = "123456"
>>> print(str.isdigit())
True
>>> str = "Be brave! Break things! Learn and have fun!"
>>> print(str.isdigit())
False
27. isupper()

函数说明:检测字符串中所有的字母是否都为大写,如果是则返回True,否则返回False。 示例:

代码语言:javascript
复制
>>> str = "BE BRAVE! BREAK THINGS! LEARN AND HAVE FUN!"
>>> print(str.isupper())
True
>>> str = "Be brave! Break things! Learn and have fun!"
>>> print(str.isupper())
False
28. islower()

函数说明:检测字符串中所有的字母是否都为小写,如果是则返回True,否则返回False。 示例:

代码语言:javascript
复制
>>> str = "Be brave! Break things! Learn and have fun!"
>>> print(str.islower())
False
>>> str = "be brave! break things! learn and have fun!"
>>> print(str.islower())
True
本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2020-05-23,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 云深之无迹 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 1. dir(obj)
  • 2. encode()
  • 3. find(str[, beg=0, end=len(s)-1])
  • 4. rfind(str[, beg=0, end=len(s)-1])
  • 5. index(str[, beg=0, len=len(s)-1])
  • 6. rindex(str[, beg=0, len=len(s)-1])
  • 7. str.join(a)
  • 8. str.split(a[, num])
  • 9. splitlines([keepends=False])
  • 10. rsplit(str, num)
  • 11. startswith(str[, beg])
  • 12. endswith(str)
  • 13. strip([str])
  • 14. lstrip([str])
  • 15. rstrip([str])
  • 16. format(*args)
  • 17. replace(old, new[, num])
  • 18. count(str[, beg, end])
  • 19. partition(str)
  • 20. rpartition(str)
  • 21. center(num)
  • 22. lower()
  • 23. upper()
  • 24. isspace()
  • 25. isalpha()
  • 26. isdigit()
  • 27. isupper()
  • 28. islower()
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档