gpt4 book ai didi

Python - 从字符串中删除前 5 个字符 - 如何获取新的较短字符串?

转载 作者:行者123 更新时间:2023-11-28 21:22:43 30 4
gpt4 key购买 nike

我是 Python 的新手。我正在从事 LCD Raspberry Pi 项目,在 LCD 上显示字符串。

我从一个命令创建了一个字符串来显示广播轨道名称(我的代码中的第 1 行),但是这个字符串总是以“名称:”开头。这直接从 MPD(音乐播放器守护程序)中读取,所以我无法预先对此做任何事情。

因为它总是以相同数量的字符开头,所以我想从这个字符串的开头删除“5”个字符,并使用一个新字符串。对我来说听起来很简单……但我做不到。

我正在尝试:

Print station[5:]

基于我在搜索答案时发现的一些东西,但它似乎什么也没做。

这是我的代码的主要部分:(同样,第 5 行旨在工作...)

f=os.popen("echo 'currentsong' | nc localhost 6600 | grep -e '^Name: '")
station = ""
for i in f.readlines():
station += i
print station[5:]
str_pad = " " * 16
station = str_pad + station
for i in range (0, len(station)):
lcd_byte(LCD_LINE_1, LCD_CMD)
lcd_text = station[i:(i+16)]
lcd_string(lcd_text,1)
time.sleep(0.3)
lcd_byte(LCD_LINE_1, LCD_CMD)
lcd_string(str_pad,1)
lcd_byte(LCD_LINE_2, LCD_CMD)
lcd_string("**Playing**",2)

这只是继续显示整行,例如“姓名:Pink Floyd - Money”

如果有人能提供帮助,我将不胜感激。

谢谢

最佳答案

问题是,当您执行 print station[5:] 时,您正在对字符串进行切片并显示它,但从未保存结果。请记住,在 Python 中,字符串是不可变的(它们不会改变)。因此,执行 station[5:] 只会返回一个从未保存的新字符串。

相反,将第 5 行替换为 station = station[5:]。这将使用不以 Name: 开头的新版本覆盖 station 字符串。

关于Python - 从字符串中删除前 5 个字符 - 如何获取新的较短字符串?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18476963/

30 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com