если вы не хотите использовать его как строку, вам нужно получить доступ через индекс или местоположение списка, здесь я только что возвратил список и получил последний элемент. затем вы можете распечатать его как целочисленное значение вместо строки.
np.random.seed(0)
df = pd.DataFrame({'num' : np.random.randint(0,50,size=10)})
print(df)
num
0 44
1 47
2 0
3 3
4 3
5 39
6 9
7 19
8 21
9 36
print(df.nsmallest(2,['num'])['num'].tolist()[-1])
out:
3
df.nsmallest(2, ['num']).iloc[[1]][['num']].to_string(index=False,header=False)
out:
' 3'