Я хочу инвертировать цифру в 3-значной строке с помощью Python. Когда у меня есть строка, как показано ниже:Обратная одна цифра в строке с python
000
Я хочу, чтобы инвертировать только один из 3 цифр сразу. Поэтому я хочу, чтобы иметь:
100 or 010 or 001
Я могу сделать это с чем-то вроде:
tmp = 000
first = int(not(int(tmp[0]))),tmp[1],tmp[2]
И я получаю:
(1, '0', '0') #instead of 100
Так что я думаю, мне нужно другое литье и т. д.
Могу ли я сделать то же самое гораздо более эффективным и простым способом? Этот вид литья раздражает. Спасибо за любую идею!
* Обратный символ * - будут только входы с цифрами '0' и' 1', правильно? – RomanPerekhrest
Мы говорим о * двоичных * цифрах? Итак, мы можем выбрать цифру сами? –
Легко перевернуть бит в целое число; вы можете использовать xor '^'. Или вы пытаетесь создать строку? Каковы ваши ожидаемые результаты и результаты? – khelwood