Доступ к последнему символу указанного элемента c в python - PullRequest
0 голосов
/ 26 января 2020

В настоящее время я создаю что-то вроде карточной программы fla sh, чтобы помочь мне одновременно изучать французский и python, используя pandas и numpy.

. У меня есть csv с 3 столбца, которые я преобразовываю в фрейм данных (глаголы). Мой код случайным образом выбирает строку (выделение) и дает слово на французском языке, затем пользователь должен ввести версию этого слова в прошедшем времени (которая находится в третьем столбце кадра данных / csv). У меня пока эта часть работает.

Я пытаюсь добавить функцию «подсказка», посредством которой пользователь вводит слово «подсказка», и она выдаст последнюю букву правильного ответа из столбца 3 кадра данных выбора.

Однако я не могу понять, как получить доступ к последней букве третьего столбца.

Ниже приведена изолированная часть, в которой я просто пытаюсь заставить ее напечатать последний символ столбца строки 0 2 из фрейма данных 'selection'

verbs=pd.read_csv('u_participle.csv')
selection=(verbs.sample())
print(selection.iloc[0,2].str[-1:])

Это выдает ошибку: AttributeError: у объекта 'str' нет атрибута 'str'

Я близок или здесь Я полностью лаю неправильное дерево с последней строкой?

Я просмотрел все, и ответы, как правило, довольно специфичны / мои знания python не достаточно хороши, чтобы понять ответы

1 Ответ

0 голосов
/ 26 января 2020

В Python (и вообще) строки обрабатываются как массивы. Таким образом, чтобы получить доступ к последней записи в строке, вам нужно всего лишь набрать [-1]. [0]. Кроме того, чтобы получить доступ к одному символу, вам нужен только один ди git, то есть [-1], а не список, который вы пытались сделать [-1:].

Например

учитывая:

x = "Name"

x[0] will equal 'N'
x[-1] will equal 'e'
x[1:-1] will equal 'ame'

И так, все, что вам нужно сделать, это изменить свой код на:

verbs=pd.read_csv('u_participle.csv')
selection=(verbs.sample())
print(selection.iloc[0,2][-1])

См. если это работает!

...