attributeerror - bbc-microbit:micropython AttributeError:“str”对象没有属性“partition”
问题描述
在 BBC microbit 上,我收到此错误,但我不知道为什么:
AttributeError: 'str' object has no attribute 'partition'
运行此代码时:
uart.write('Received: "' + incoming + '"\n')
head, mid, tail = incoming.partition(' ')
传入是一个字符串,可以在控制台中看到
MicroPython v1.9.2-34-gd64154c73 on 2017-09-01; micro:bit v1.0.1 with nRF51822
Type "help()" for more information.
>>>
>>> Received: "buggy direction 2.16 1.2"
Traceback (most recent call last):
File "__main__", line 122, in <module>
File "__main__", line 25, in drive
AttributeError: 'str' object has no attribute 'partition'
有什么想法可以在这里做吗?
解决方案
BBC micropython 字符串类没有分区方法。尝试使用拆分方法。您的示例中的字符串“buggy direction 2.16 1.2”有四个元素。试图将其拆分为三个变量 head、mid、tail 会导致错误。
您可以使用下面的示例代码访问字符串的第一个和最后一个元素:
words = incoming.split(',')
head = words[0]
tail = words[-1]
print('head: {} tail: {}'.format(head, tail))
推荐阅读
- python - 迭代 QTreeView 行
- amazon-web-services - 如何使用 CloudFormation 从别名获取 AWS SSM Key Arn?
- excel - 在列中查找包含文本且在字符串的前 6 个字符中不包含特定单词的单元格
- r - 在 R 中绘制 glm 会引发关于 x 和 y 中的行数的错误
- angular - 仅在创建元素后使用 @ViewChild 获取 html 元素
- c# - 如何找到场景中附加特定组件的对象数量?
- css - 如何同时进行按钮和输入框过渡?
- python - Google Colaboratory - 超出最大调用堆栈大小
- sql - 在sql查询中查找每个用户和日期的最新行
- firebase - 我是否必须在 firebase 的使用范围内为第二个数据库付费?