I have a latex document like this, where I define my own lstlsting language:
\documentclass{article}
\usepackage{listings}
\usepackage{xcolor}
\definecolor{backcolour}{rgb}{0.95,0.95,0.92}
\definecolor{keywords1}{RGB}{193,89,45}
\definecolor{keywords2}{RGB}{55,80,146}
\definecolor{string}{RGB}{72,94,70}
\lstdefinelanguage{Python}{
backgroundcolor=\color{backcolour},
commentstyle=\color{codegreen},
keywords=[1]{class, import},
keywordstyle=[1]\color{keywords1},
keywords=[2]{print},
keywordstyle=[2]\color{keywords2},
numberstyle=\tiny\color{codegray},
stringstyle=\color{string}\ttfamily,
basicstyle=\footnotesize,
breakatwhitespace=false,
breaklines=true,
captionpos=b,
keepspaces=true,
numbers=none,
numbersep=5pt,
showspaces=false,
showstringspaces=false,
showtabs=false,
tabsize=2
}
\begin{document}
\begin{lstlisting}[language=Python]
import pandas as pd
import qnorm
df = pd.DataFrame({'C1': {'A': 5, 'B': 2, 'C': 3, 'D': 4},
'C2': {'A': 4, 'B': 1, 'C': 4, 'D': 2},
'C3': {'A': 3, 'B': 4, 'C': 6, 'D': 8}})
print(qnorm.quantile_normalize(df, axis=1))
C1 C2 C3
A 5.666667 5.166667 2.000000
B 2.000000 2.000000 3.000000
C 3.000000 5.166667 4.666667
D 4.666667 3.000000 5.666667
\end{lstlisting}
\end{document}
How do I make sure the text in between the apostrophe's (') is colored by my defined string color? I have tried adding a stringstyle, but it seems like the apostrophe isn't recognized as string. Neither are other symbols, e.g. "
What am I doing wrong...?
string
character to yourPython
language definition, so addstring=[b]{'}
.