Найти - Пользователи
Полная версия: замена элементов массива на другие
Начало » Python для новичков » замена элементов массива на другие
1 2 3
Rumato
Здравствуйте, у меня такой вот вопрос: есть массив в неё есть единицы и нули нужно поменять нули на единицы а единицы на нули, на php сразу написал, функция replace, в питоне такая же функция и должно всё так же работать, но пока не получается, подскажите, пожалуйста, как это лучше реализовать? или может есть другие функции?
sp3
что вы подразумеваете под массивом
Rumato
набор индексированных однотипных данных, в моём случае это d = array([,])
maxwell
Rumato,
В чем конкретно ошибка, проблема? Какой код вы уже написали и он не работает?
Хотя после “функция replace”, хочется отправить вас на курсы кройки и шитья.
Rumato
не знаю куда меня лучше отправить….
 
d = array([[0,1],[1,0]])
d = d.replace('0','1')
нечто подобное работает в php, я просто не нашёл ничего при помощи гугла как заменить одни элементы на другие в питоне, в коем только начинаю разбираться, если покажите как заменять элементы массива на другие, то буду искренне благодарен
Rumato
 $path="in.txt";
$text=file($path);
$cirillic=array('й','ц','у','к','е','н','г','ш','щ','з','х','ъ','ф','ы','в','а','п',
'р','о','л','д','ж','э','я','ч','с','м','и','т','ь','б','ю');
$latin=array('q','w','e','r','t','y','u','i','o','p','[',']',
'a','s','d','f','g','h','j','k','l',';','','z','x','c','v','b','n','m',',','.');
$newlat=str_ireplace($cirillic,$latin,$text);


foreach($newlat as $value)
{
echo $value.'<br>';
}
вот нечто подобное нужно сделать на питоне, только в массиве не буквы, слова, а цифры, просто не верится, что нет какого-то готового решения наподобие этого
ptax
test = ['0','0','1','1']
test_2 = []
for i in test:
if i in '0':
zam_1 = i.replace('0','1')
test_2.append(zam_1)
else:
zam_2 = i.replace('1','0')
test_2.append(zam_2)
print test_2
Если я правильно понял то что вам нужно.
Решение сам по себе не очень .
Zubchick
все просто:
test = ['0','0','1','1']
res = ['1' if x == '0' else '0' if x == '1' else x for x in test]
Ed
Rumato
вот нечто подобное нужно сделать на питоне, только в массиве не буквы, слова, а цифры, просто не верится, что нет какого-то готового решения наподобие этого
Как это нет? В Питоне все есть :)!
import string
text = "abc"
text.translate(string.maketrans("abc", "123"))
странслирует в ‘123’. По-моему это полный аналог вашего str_replace.
Rumato
большое спасибо за помощь, то что нужно
This is a "lo-fi" version of our main content. To view the full version with more information, formatting and images, please click here.
Powered by DjangoBB