我是Kivy的新手,我試圖製作一個應用程序來計算字符串中的單詞數量,並在新的彈出框中顯示單詞數量,並且我不斷收到此錯誤消息即使使用str()。類型錯誤:預期字符串或緩衝區 下面是代碼:Kivy(Python)TypeError:預期的字符串或緩衝區
from kivy.app import App
from kivy.uix.popup import Popup
from kivy.uix.label import Label
from kivy.uix.boxlayout import BoxLayout
import re
class CountRoot(BoxLayout):
def clk(self, text_input):
text = Label(text="Hello, {}!".format(text_input))
res = re.findall("(\S+)", text)
nw = Popup(title="Our Title!", content=res,size_hint=(.7, .7))
nw.open()
class CountApp(App):
def build(self):
return CountRoot()
if __name__ == "__main__":
CountApp().run()
這裏是kivy文件:
<CountRoot>:
orientation: "vertical"
padding: root.width * .02, root.height * .02
spacing: "10dp"
TextInput:
id: text_input
hint_text: "Enter Text"
font_size: "30dp"
Button:
text: "Press Me"
on_release: root.clk(text_input.text)
錯誤消息告訴您哪一行誤差上。 –
什麼是'res'?它是一個字符串嗎?你確定?你檢查過了嗎? [文檔說這是一個字符串列表](https://docs.python.org/2/library/re.html#re.findall)。 –
res是''re.findall(「(\ S +)」,text)''的結果,它是一個數字(int) –