Python Tutorial: Creating a personality
Skills:
AI Pair Programming70%
Want to learn more? Take the full course at https://learn.datacamp.com/courses/building-chatbots-in-python at your own pace. More than a video, you'll learn hands-on coding & quickly apply skills to your daily work.
---
Creating an engaging personality is a fun and absolutely crucial part of chatbot development.
It's one of the key differences compared to any other kind of software
So why bother with a personality?
If all you could do was type precise instructions to your bot, you would actually just have a command line application, not a chatbot.
Most chatbots are embedded in a messaging app that people are comfortable using to talk to their friends.
And you can expect that straightaway your users will want to make a bit of smalltalk, often before trying out any 'functionality' that they came for.
It's not much effort to code up some responses to common questions, and is worth it for the improved user experience.
The simplest thing we can do is use a python dictionary, with user messages as the keys and responses as the values.
For example, here we define a dictionary called `responses`, with the messages `"what's your name?"` and
`"what's today's weather"` as keys, and suitable responses as values.
Next, we define a function called `respond`, which accepts a message as a single argument. This function tests if a message has a defined response by using the `in` keyword, that is "if message in responses". This statement only returns `True` if the message corresponds to one of the keys in the dictionary.
Notice that this will only work if the user's message *exactly* matches a key in the dictionary. In later chapters you will build much more robust solutions.
Notice that if there isn't a matching message, the `return` keyword will never be reached, so the function will return None.
Since the world outside is always changing, your bot's answers have to be able to as well.
The first thing you can do is add some placeholders to the responses. For example, inst
Watch on YouTube ↗
(saves to browser)
Sign in to unlock AI tutor explanation · ⚡30
Playlist
Uploads from DataCamp · DataCamp · 0 of 60
← Previous
Next →
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
SQL Server Tutorial: Date manipulation
DataCamp
R Tutorial: Intermediate Interactive Data Visualization with plotly in R
DataCamp
R Tutorial: Adding aesthetics to represent a variable
DataCamp
R Tutorial: Moving Beyond Simple Interactivity
DataCamp
Python Tutorial: Why use ML for marketing? Strategies and use cases
DataCamp
Python Tutorial: Preparation for modeling
DataCamp
Python Tutorial: Machine Learning modeling steps
DataCamp
R Tutorial: The prior model
DataCamp
R Tutorial: Data & the likelihood
DataCamp
R Tutorial: The posterior model
DataCamp
R Tutorial: An Introduction to plotly
DataCamp
R Tutorial: Plotting a single variable
DataCamp
R Tutorial: Bivariate graphics
DataCamp
Python Tutorial: Customer Segmentation in Python
DataCamp
Python Tutorial: Time cohorts
DataCamp
Python Tutorial: Calculate cohort metrics
DataCamp
Python Tutorial: Cohort analysis visualization
DataCamp
R Tutorial: Building Dashboards with flexdashboard
DataCamp
R Tutorial: Anatomy of a flexdashboard
DataCamp
R Tutorial: Layout basics
DataCamp
R Tutorial: Advanced layouts
DataCamp
Python Tutorial: Time Series Analysis in Python
DataCamp
Python Tutorial: Correlation of Two Time Series
DataCamp
Python Tutorial: Simple Linear Regressions
DataCamp
Python Tutorial: Autocorrelation
DataCamp
R Tutorial: The gapminder dataset
DataCamp
R Tutorial: The filter verb
DataCamp
R Tutorial: The arrange verb
DataCamp
R Tutorial: The mutate verb
DataCamp
R Tutorial: What is cluster analysis?
DataCamp
R Tutorial: Distance between two observations
DataCamp
R Tutorial: The importance of scale
DataCamp
R Tutorial: Measuring distance for categorical data
DataCamp
Python Tutorial: Plotting multiple graphs
DataCamp
Python Tutorial: Customizing axes
DataCamp
Python Tutorial: Legends, annotations, & styles
DataCamp
Python Tutorial: Introduction to iterators
DataCamp
Python Tutorial: Playing with iterators
DataCamp
Python Tutorial: Using iterators to load large files into memory
DataCamp
SQL Tutorial: Introduction to Relational Databases in SQL
DataCamp
SQL Tutorial: Tables: At the core of every database
DataCamp
SQL Tutorial: Update your database as the structure changes
DataCamp
Python Tutorial: Classification-Tree Learning
DataCamp
Python Tutorial: Decision-Tree for Classification
DataCamp
Python Tutorial: Decision-Tree for Regression
DataCamp
Python Tutorial: Census Subject Tables
DataCamp
Python Tutorial: Census Geography
DataCamp
Python Tutorial: Using the Census API
DataCamp
R Tutorial: A/B Testing in R
DataCamp
R Tutorial: Baseline Conversion Rates
DataCamp
R Tutorial: Designing an Experiment - Power Analysis
DataCamp
R Tutorial: Introduction to qualitative data
DataCamp
R Tutorial: Understanding your qualitative variables
DataCamp
R Tutorial: Making Better Plots
DataCamp
SQL Tutorial: OLTP and OLAP
DataCamp
SQL Tutorial: Storing data
DataCamp
SQL Tutorial: Database design
DataCamp
Python Tutorial: Introduction to spaCy
DataCamp
Python Tutorial: Statistical Models
DataCamp
Python Tutorial: Rule-based Matching
DataCamp
More on: AI Pair Programming
View skill →Related AI Lessons
⚡
⚡
⚡
⚡
Miller’s Law: The Number Everyone Quotes and Almost Nobody Understands
Medium · UX Design
The Interface Was Never the System
Medium · UX Design
Beyond the Terminal: Building VIVA for Vibe Coders
Medium · ChatGPT
Why the Edges of Your UI Are Making Decisions Before Your Users Do
Medium · UX Design
🎓
Tutor Explanation
DeepCamp AI