ValueError:MDLabel._text仅接受str

如何解决ValueError:MDLabel._text仅接受str

##当我尝试将bot响应添加到md标签中时,显示的错误为'ValueError:MDLabel._text仅接受str不声明'我不知道该如何解决,如果可以的话,请帮忙BOTWORK#

 from kivy.lang import Builder
    from kivymd.app import MDApp
    from kivy.uix.screenmanager import Screen,ScreenManager
    from kivymd.uix.dialog import MDDialog
    from kivymd.uix.button import MDFlatButton
    from kivy.storage.jsonstore import JsonStore
    from kivymd.uix.picker import MDDatePicker
    from kivy.core.window import Window
    from chatterbot.trainers import ListTrainer
    from chatterbot import ChatBot
    from kivy.properties import StringProperty
    
    Window.size = (305,500)
    
    helpstr = '''
    ScreenManager:
        HomeScreen:
        WelcomeScreen:
        UsernameScreen:
        DOB:
        MainScreen:
        LoginScreen:
        ForgotScreen:
        Forgot2Screen:
        EmailScreen:
        HelpScreen:
        Chat_Bot:
       
    
    
    
    
    
    <HomeScreen>: 
        name :'homescreen'
        Screen:
        NavigationLayout: 
            ScreenManager: 
                id: screen_manager 
    
                Screen:
    
                    name: "scr 1" 
                    MDBottomNavigation:
                        MDBottomNavigationItem:
                            text: 'Home'
                            name: 'screen1'
                            icon: 'home-circle'
                            BoxLayout:
                                orientation: 'vertical'
                                MDToolbar:
                                    title: 'streamer'
                                    left_action_items: [['menu',lambda x: nav_drawer.toggle_nav_drawer()]]
                                    right_action_items: [['magnify',lambda x: app.speed_dial()]]
                                    elevation: 10
                                Widget:  
    
                        MDBottomNavigationItem:
                            text:'notification'
                            name: 'screen--'
                            icon: 'bell'
                        MDBottomNavigationItem:
                            text:'library'
                            name: 'screen9'
                            icon: 'play-speed'
                            MDList:
                            OneLineIconListItem:
                                text: 'downloads'
                                on_press:
                                    root.manager.current = 'homescreen'
                                IconLeftWidget:
                                    icon: 'download'
    
    
    
                        MDBottomNavigationItem:
                            text: 'account'
                            name: 'screen2'
                            icon: 'account-circle'
                            BoxLayout:
                                orientation: 'vertical'
    
                                canvas.before:
                                    Color:
                                        rgba: 1,1,1
                                    Rectangle:
                                        pos: self.pos
                                        size: self.size
                                        source: "data/bgm.jpg"
    
                                FloatLayout:
                                    canvas:
                                        Color:
                                            rgb: 1,1
                                        Ellipse:
                                            id: user_picture
                                            pos: root.width/2 - 150/2,self.height/2 - 500/2 + 150*1.5
                                            size: 150,150
                                            source: 'data/Man.jpg'
                                            angle_start: 0
                                            angle_end: 360
                                        Line:
                                            width: 2
                                            ellipse: (root.width/2 - 158/2,self.height/2 - 500/2 + 150*1.5,158,360)
                            MDRaisedButton:
                                text: 'Details'
                                pos_hint: {'center_x':0.5,'center_y':0.32}
                                on_press:
                                    app.data_show()
                            MDLabel:
                                id:data_name
                                text:'datascreen'
                                font_style : 'Button'
                                halign : 'center'
                                pos_hint : {'center_y':0.1} 
                                background_normal: 'data/input_line.png'     
    
    
            MDNavigationDrawer:
                id: nav_drawer
                BoxLayout:
                    orientation: 'vertical'
                    Image:
                        source: ('instagram.jpg')
    
    
    
    
                    ScrollView:
                        MDList:
                            OneLineIconListItem:
                                text: 'Home'
                                on_press:
                                    root.manager.current = 'homescreen'
                                IconLeftWidget:
                                    icon: 'home'
                            OneLineIconListItem:
                                text: 'settings' 
                                on_release:
                                    screen_manager.current = "scr 2"
                                IconLeftWidget:
                                    icon: 'settings'
    
    
                            OneLineIconListItem:
                                text: 'login'
                                on_release:
                                    root.manager.current = 'loginscreen'
    
                                IconLeftWidget:
                                    icon: 'login'
                            OneLineIconListItem: 
                                text: 'Help'
                                on_release:
                                    root.manager.current = 'helpscreen'
                                IconLeftWidget:
                                    icon: 'help-circle'
    
    
    
    
    
    
    <WelcomeScreen>:
        name : 'welcomescreen'
        MDLabel:
            text:'Welcome to streamer'
            font_style: 'Button'
            halign: 'center'
            pos_hint: {'center_y':0.75}
        MDLabel:
            text:'Create an account in a few easy steps and enjoy your favourites'
            font_style: 'Subtitle1'
            halign: 'center'
            theme_text_color: "Secondary"
            pos_hint: {'center_y':0.55}
        MDRaisedButton:
            text: 'Next'
            pos_hint: {'center_x':0.5,'center_y':0.32}
            on_press:
                root.manager.current = 'emailscreen'
                root.manager.transition.direction = 'left'
        MDProgressBar:
            value:30
            pos_hint:{'center_y' : 0.02}
    <EmailScreen>
        name:'emailscreen'
        MDLabel:
            text:'Email Address?'
            font_style: 'Button'
            halign: 'center'
            pos_hint : {'center_y':0.85}
        MDTextField:
            id:Email_text_fied
            pos_hint: {'center_x':0.5,'center_y':0.6}
            size_hint: (0.7,0.1)
            hint_text : 'Email'
            helper_text: 'Required'
            helper_text_mode: 'on_error'
            icon_right: 'email'
            icon_right_color: app.theme_cls.primary_color
            required : True
    
        MDIconButton:
            id:disabled_button
            icon: 'arrow-right'
            pos_hint: {'center_x':0.9,'center_y':0.1}
            on_press:
                root.manager.current = 'usernamescreen'
    <UsernameScreen>
        name:'usernamescreen'
        MDIconButton:
            icon: 'arrow-left'
            pos_hint: {'center_x':0.1,'center_y':0.1}
            on_press:
                root.manager.current = 'welcomescreen'
                root.manager.transition.direction = 'right'
        MDIconButton:
            id:disabled_button
            disabled: True
            icon: 'arrow-right'
            pos_hint: {'center_x':0.9,'center_y':0.1}
            on_press:
                root.manager.current = 'dob'
                root.manager.transition.direction = 'left'
        MDProgressBar:
            value:60
            pos_hint: {'center_y':0.02}
        MDLabel:
            text:'whats your name?'
            font_style: 'Button'
            halign: 'center'
            pos_hint : {'center_y':0.85}
        MDTextField:
            id:username_text_fied
            pos_hint: {'center_x':0.5,0.1)
            hint_text : 'username'
            helper_text: 'Required'
            helper_text_mode: 'on_error'
            icon_right: 'account'
            icon_right_color: app.theme_cls.primary_color
            required : True
        MDIconButton:
            icon:'account-plus'
            pos_hint: {'center_x':0.5,'center_y':0.35}
            on_press: app.check_username()
    <DOB>:
        name:'dob'
        MDLabel:
            text:'whats your birthday'
            font_style: 'Button'
            halign: 'center'
            pos_hint: {'center_y':0.75} 
        MDRaisedButton:
            id:date_picker
            text:'Date Picker'
            user_font_size : '70sp'
            pos_hint : {'center_x':0.5,'center_y':0.6}
            on_press:
                app.show_date_picker()
        MDIconButton:
            icon:'arrow-left'
            pos_hint: {'center_x':0.1,'center_y':0.1}
            on_press: root.manager.current = 'usernamescreen'
        MDIconButton:
            id: second_disabled
            disabled: True
            icon:'arrow-right'
            pos_hint: {'center_x':0.9,'center_y':0.1}
            on_press: root.manager.current = 'mainscreen'
    <MainScreen>:
        name : 'mainscreen'
        MDLabel:
            id:profile_name
            text:'main screen'
            font_style : 'Button'
            halign : 'center'
            pos_hint : {'center_y':0.7}
        MDRaisedButton:
            text: "Home"
            pos_hint: {"center_x": 0.5,"center_y":0.06}
            size_hint: .70,0.03
            on_press:
                root.manager.current = 'homescreen'
    <LoginScreen>:
        name : 'loginscreen' 
        MDIconButton:
            icon: "arrow-left"
            on_press:
                root.manager.current = 'homescreen'
    
    
    
        MDLabel:
            text: 'streamer'
            halign: "center"
            pos_hint: {"center_y": .8}
            font_style: "H6"
            size_hint: (1,1)
    
        MDTextField:
            id : data_ok_10
            hint_text: "Enter username"
            helper_text: "or click on forgot password"
            helper_text_mode: "on_focus"
            icon_right:"account"
            icon_right_color: app.theme_cls.primary_color
            pos_hint:{'center_x': 0.5,'center_y': 0.64}
            size_hint_x:None
            width:300       
    
        MDTextField:
            hint_text: "Enter password"
    
            icon_right: "eye-off"
            icon_right_color: app.theme_cls.primary_color
            pos_hint:{'center_x': 0.5,'center_y': 0.54}
            size_hint_x:None
            password: True
            width:300       
    
    
        MDRaisedButton:
            text: "Login"
            pos_hint: {"center_x": 0.5,"center_y":0.48}
            size_hint: .7,0.04
            on_press:
                app.show_data()
    
    
        MDTextButton:
            text: "Forgot password?"
            pos_hint: {"center_x":0.5,"center_y":0.04}
            on_release:
                root.manager.current = 'forgotscreen'
    
    
    
        MDTextButton:
            text: f"[color=#000000]Don't have an account?[/color] Sign up"
            on_press:
                root.manager.current = 'welcomescreen'
            markup: True
            pos_hint: {"center_x":0.5,"center_y":0.33}
    
    
    
    <ForgotScreen>:
        name :'forgotscreen'
        BoxLayout:
            orientation: 'vertical'
            MDToolbar:
                title: 'forgot?'
                elevation: 10
            Widget:     
        MDIconButton:
            icon: "arrow-left"
            on_press:
                root.manager.current = 'loginscreen'
    
    
    
    
        MDTextField:
            hint_text: "Enter username or email"
            helper_text: "or click on forgot username"
            helper_text_mode: "on_focus"
            icon_right: "bell"
            icon_right_color: app.theme_cls.primary_color
            pos_hint:{'center_x': 0.5,'center_y': 0.6}
            size_hint_x:None
            width:300       
    
    
        MDRaisedButton:
            text: "Forgot Password"
            on_press:
                root.manager.current = 'forgot2screen'           
            pos_hint: {"center_x": 0.5,"center_y":0.5}
            size_hint: .8,0.04
    
        MDTextButton:
            text: f"[color=#000000]Don't have an account?[/color] Sign up"
            on_press:
                root.manager.current = 'welcomescreen'
    
            markup: True
            pos_hint: {"center_x":0.5,"center_y":0.23}
    
        MDTextButton:
            text: f"[b][color=#000000]Back To[/color] Login[/b]"
            on_press:
                root.manager.current = 'loginscreen'
            markup: True
            pos_hint: {"center_x":0.5,"center_y":0.13}
    
    
        MDLabel:
            text: f"[font=Icons] {md_icons['copyright']}[/font]"
            markup: True
            halign: "center"
            pos_hint: {"center_y":0.05}
    
    <Forgot2Screen>:
        name :'forgot2screen'
        BoxLayout:
            orientation: 'vertical'
            MDToolbar:
                title: 'Account verification'
                elevation: 10 
            Widget:            
    
            MDIconButton:
                icon: "arrow-left"
                on_release:
                    root.manager.current = 'forgotscreen'
            MDLabel:
                text: "Account verification"
                halign: "center"
                pos_hint: {"center_y":.73}
                font_style: "Subtitle2"
    
            MDLabel:
                text: "We've sent a verification code to your email."
                halign: "center"
                pos_hint: {"center_y":.67}
                font_style: "Body2"
    
            MDTextField:
                hint_text: "Enter code"
                helper_text: "or click resent code"
                password: True
                max_text_length: 6
                helper_text_mode: "on_focus"
                icon_right: "timer-10"
                icon_right_color: app.theme_cls.primary_color
                pos_hint:{'center_x': 0.5,'center_y': 0.6}
                size_hint_x:None
                width:300       
            MDTextButton:
                text: "Resend code"
                pos_hint: {"center_x": 0.5,"center_y":0.45}
    
            MDRaisedButton:
                text: "Submit"
                pos_hint: {"center_x": 0.5,"center_y":0.52}
                size_hint: .70,0.3
    
    
    
    
            MDLabel:
                text: "Never share your verification code to anyone."
                halign: "center"
                pos_hint: {"center_y":.4}
                font_style: "Caption"
    
            MDLabel:
                text: f"[font=Icons] {md_icons['copyright']}[/font] "
                markup: True
                halign: "center"
                pos_hint: {"center_y":.05}
    <HelpScreen>:
        name :'helpscreen'
        BoxLayout:
            orientation: 'vertical'
            MDToolbar:
                title: 'Help'
                elevation: 10
            Widget:
            MDList:
                OneLineIconListItem:
                    text: 'help from Bot'
                    on_press:
                        root.manager.current = 'chat_bot'
                    IconLeftWidget:
                        icon: 'robot'
                OneLineIconListItem:
                    text: 'customer care'
                    on_press:
                        root.manager.current = 'homescreen'
                    IconLeftWidget:
                        icon: 'phone-in-talk'
    
    <Chat_Bot>: 
        name :'chat_bot'
        BoxLayout:
            orientation: 'vertical'
            MDCard:
                orientation: "vertical"
                padding: "8dp"
                size_hint: None,None
                size: "900dp","500dp"
                pos_hint: {"center_x": .5,"center_y": .5}
            
                MDLabel:
                    text: ""
                    theme_text_color: "Secondary"
                    size_hint_y: None
                    height: self.texture_size[1]
                    id: chat_logs
                    pos_hint: {'center_x': 0.86,'center_y': 0.2}
                MDLabel:
                    text: ""
                    theme_text_color: "Secondary"
                    size_hint_y: None
                    height: self.texture_size[1]
                    id: chat_bot_1
                    pos_hint: {'center_x': 0.86,'center_y': 0.2}
                
            
                MDSeparator:
                    height: "0.9dp"
                MDIconButton:
                    id: uuuuu_o
                    icon: 'send'
                    pos_hint: {'center_x': .64,'center_y': 0.05}
                    on_press:
                        app.botwork()
        
                MDTextFieldRound:
                    hint_text: "How can i help you"
                    icon_right_color: app.theme_cls.primary_color
                    pos_hint: {'center_x': 0.48,'center_y': 0.2}
                    size_hint_x: None
                    width: 200
                    id: jack_66
                    
                    
           
        
                   
                    
                    
                    
                    
                    
                    
                    
        
    '''
    
    
    class WelcomeScreen(Screen):
        pass
    
    
    class UsernameScreen(Screen):
        pass
    
    
    class DOB(Screen):
        pass
    
    
    class MainScreen(Screen):
        pass
    
    
    class HomeScreen(Screen):
        pass
    
    
    class LoginScreen(Screen):
        pass
    
    
    class ForgotScreen(Screen):
        pass
    
    
    class Forgot2Screen(Screen):
        pass
    
    
    class EmailScreen(Screen):
        pass
    
    
    class HelpScreen(Screen):
        pass
    
    
    class Chat_Bot(Screen):
        pass
    
    
    def esc_markup(msg):
        return (msg.replace('&','&amp;')
                .replace('[','&bl;')
                .replace(']','&br;'))
    
    
    sm = ScreenManager()
    sm.add_widget(WelcomeScreen(name='welcomescreen'))
    sm.add_widget(UsernameScreen(name='usernamescreen'))
    sm.add_widget(DOB(name='dob'))
    sm.add_widget(MainScreen(name='main_screen'))
    sm.add_widget(HomeScreen(name='homescreen'))
    sm.add_widget(LoginScreen(name='loginscreen'))
    sm.add_widget(ForgotScreen(name='forgotscreen'))
    sm.add_widget(Forgot2Screen(name='forgot2screen'))
    sm.add_widget(EmailScreen(name='emailscreen'))
    sm.add_widget(HelpScreen(name='helpscreen'))
    sm.add_widget(Chat_Bot(name='chat_bot'))
    
    
    class NewApp(MDApp):
        def build(self):
            self.strng = Builder.load_string(helpstr)
            return self.strng
    
        def check_username(self):
            self.username_text = self.strng.get_screen('usernamescreen').ids.username_text_fied.text
            username_check_false = True
            try:
                int(self.username_text)
            except:
                username_check_false = False
            if username_check_false or self.username_text.split() == []:
                cancel_btn_username_dialogue = MDFlatButton(text='Retry',on_release=self.close_username_dialogue)
                self.dialog = MDDialog(title='Invalid Username',text="Please input a valid username",size_hint=(0.7,0.2),buttons=[cancel_btn_username_dialogue])
                self.dialog.open()
    
            else:
                self.strng.get_screen('usernamescreen').ids.disabled_button.disabled = False
    
        def close_username_dialogue(self,obj):
            self.dialog.dismiss()
    
        def show_date_picker(self):
            date_dialog = MDDatePicker(callback=self.get_date,year=1999,month=1,day=1,)
            date_dialog.open()
    
        def get_date(self,date):
            self.dob = date
            self.strng.get_screen('dob').ids.date_picker.text = str(self.dob)
            self.strng.get_screen('dob').ids.second_disabled.disabled = False
            self.gmail = self.strng.get_screen('emailscreen').ids.Email_text_fied.text
            # Storing of DATA
            self.store.put('UserInfo',name=self.username_text,)
            self.store.put('DOBUSER',dob=str(self.dob))
            self.store.put('GMAILUSER',gmail=self.gmail)
    
        def username_changer(self):
            self.strng.get_screen('mainscreen').ids.profile_name.text = f"Sign up finished"
    
        def on_start(self):
            self.store = JsonStore("userProfile.json")
            try:
                if self.store.get('UserInfo') != "":
                    self.username_changer()
                    self.strng.get_screen('mainscreen').manager.current = 'homescreen'
    
            except KeyError:
                self.strng.get_screen('welcomescreen').manager.current = 'welcomescreen'
    
        def show_data(self):
            self.password_ok = self.strng.get_screen('loginscreen').ids.data_ok_10.text
    
            if self.password_ok is '':
                check_string = 'please enter a vaild username and pasword'
            else:
                check_string = self.password_ok + '  does not exist'
            close_button = MDFlatButton(text="close",on_release=self.close_dialog)
            more_button = MDFlatButton(text='more')
            self.dialog = MDDialog(title='username and password chek',text=check_string,1),buttons=[close_button,more_button])
            self.dialog.open()
    
        def close_dialog(self,obj):
            self.dialog.dismiss()
    
        def data_show(self):
            self.strng.get_screen(
                'homescreen').ids.data_name.text = f"NAME: {self.store.get('UserInfo')['name']}                                     " \
                                                   f"DATE OF BIRTH:{self.store.get('DOBUSER')['dob']}                       " \
                                                   f"MAIL:{self.store.get('GMAILUSER')['gmail']}    "
    
    
        def botwork(self):
            bot = ChatBot('Text')
            conv = open('english/ai.yml','r').readlines()
    
            bot.set_trainer(ListTrainer)
            bot.train(conv)
    
    
    
            nickname = self.strng.get_screen('mainscreen').ids.profile_name.text = f"{self.store.get('UserInfo')['name']}"
            msg = self.strng.get_screen('chat_bot').ids.jack_66.text
    
            self.strng.get_screen('chat_bot').ids.chat_logs.text = nickname + ':' + esc_markup(msg)
            response = bot.get_response(msg)
            #THE PROBLEM IS AT HERE
            self.strng.get_screen('chat_bot').ids.chat_bot_1.text = ('Bot: ',response)
    
    
    NewApp().run()

**我正在尝试进行chat_bot _ !. text = bot响应,但显示错误'ValueError:MDLabel._text仅接受str不声明'我不知道如何解决此问题,请您帮忙

解决方法

尝试

response = bot.get_response(msg)
self.strng.get_screen('chat_bot').ids.chat_bot_1.text = 'Bot: ' +  str(response)

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐


使用本地python环境可以成功执行 import pandas as pd import matplotlib.pyplot as plt # 设置字体 plt.rcParams[&#39;font.sans-serif&#39;] = [&#39;SimHei&#39;] # 能正确显示负号 p
错误1:Request method ‘DELETE‘ not supported 错误还原:controller层有一个接口,访问该接口时报错:Request method ‘DELETE‘ not supported 错误原因:没有接收到前端传入的参数,修改为如下 参考 错误2:cannot r
错误1:启动docker镜像时报错:Error response from daemon: driver failed programming external connectivity on endpoint quirky_allen 解决方法:重启docker -&gt; systemctl r
错误1:private field ‘xxx‘ is never assigned 按Altʾnter快捷键,选择第2项 参考:https://blog.csdn.net/shi_hong_fei_hei/article/details/88814070 错误2:启动时报错,不能找到主启动类 #
报错如下,通过源不能下载,最后警告pip需升级版本 Requirement already satisfied: pip in c:\users\ychen\appdata\local\programs\python\python310\lib\site-packages (22.0.4) Coll
错误1:maven打包报错 错误还原:使用maven打包项目时报错如下 [ERROR] Failed to execute goal org.apache.maven.plugins:maven-resources-plugin:3.2.0:resources (default-resources)
错误1:服务调用时报错 服务消费者模块assess通过openFeign调用服务提供者模块hires 如下为服务提供者模块hires的控制层接口 @RestController @RequestMapping(&quot;/hires&quot;) public class FeignControl
错误1:运行项目后报如下错误 解决方案 报错2:Failed to execute goal org.apache.maven.plugins:maven-compiler-plugin:3.8.1:compile (default-compile) on project sb 解决方案:在pom.
参考 错误原因 过滤器或拦截器在生效时,redisTemplate还没有注入 解决方案:在注入容器时就生效 @Component //项目运行时就注入Spring容器 public class RedisBean { @Resource private RedisTemplate&lt;String
使用vite构建项目报错 C:\Users\ychen\work&gt;npm init @vitejs/app @vitejs/create-app is deprecated, use npm init vite instead C:\Users\ychen\AppData\Local\npm-
参考1 参考2 解决方案 # 点击安装源 协议选择 http:// 路径填写 mirrors.aliyun.com/centos/8.3.2011/BaseOS/x86_64/os URL类型 软件库URL 其他路径 # 版本 7 mirrors.aliyun.com/centos/7/os/x86
报错1 [root@slave1 data_mocker]# kafka-console-consumer.sh --bootstrap-server slave1:9092 --topic topic_db [2023-12-19 18:31:12,770] WARN [Consumer clie
错误1 # 重写数据 hive (edu)&gt; insert overwrite table dwd_trade_cart_add_inc &gt; select data.id, &gt; data.user_id, &gt; data.course_id, &gt; date_format(
错误1 hive (edu)&gt; insert into huanhuan values(1,&#39;haoge&#39;); Query ID = root_20240110071417_fe1517ad-3607-41f4-bdcf-d00b98ac443e Total jobs = 1
报错1:执行到如下就不执行了,没有显示Successfully registered new MBean. [root@slave1 bin]# /usr/local/software/flume-1.9.0/bin/flume-ng agent -n a1 -c /usr/local/softwa
虚拟及没有启动任何服务器查看jps会显示jps,如果没有显示任何东西 [root@slave2 ~]# jps 9647 Jps 解决方案 # 进入/tmp查看 [root@slave1 dfs]# cd /tmp [root@slave1 tmp]# ll 总用量 48 drwxr-xr-x. 2
报错1 hive&gt; show databases; OK Failed with exception java.io.IOException:java.lang.RuntimeException: Error in configuring object Time taken: 0.474 se
报错1 [root@localhost ~]# vim -bash: vim: 未找到命令 安装vim yum -y install vim* # 查看是否安装成功 [root@hadoop01 hadoop]# rpm -qa |grep vim vim-X11-7.4.629-8.el7_9.x
修改hadoop配置 vi /usr/local/software/hadoop-2.9.2/etc/hadoop/yarn-site.xml # 添加如下 &lt;configuration&gt; &lt;property&gt; &lt;name&gt;yarn.nodemanager.res