Citat:
Vad vill du åstadkomma med count=3?Hej, string.replace struntar i count parametern då jag försöker ersätta ettorna i början under med
strängen 'H'. Bara de tre första ettorna jag vill ersätta med 'H'. I koden under hoppar ettorna in längre
i listan även om jag satt count parametern 3
(Ja jag kunde manuellt ha lagt in de första H:na,men nästa steg är att( allt eftersom )ersätta
2
rna med 'He', 3.orna med 'Li',4-orna med 'Be', osv upp till 96-orna som ersätts med 'Cm'
Googlat mig tokig men hittar inte det( uppenbara?) svaret.
count parametern kanske bara funkar på enstaka sträng istället för lista av strängar?
strängen 'H'. Bara de tre första ettorna jag vill ersätta med 'H'. I koden under hoppar ettorna in längre
i listan även om jag satt count parametern 3
(Ja jag kunde manuellt ha lagt in de första H:na,men nästa steg är att( allt eftersom )ersätta
2
rna med 'He', 3.orna med 'Li',4-orna med 'Be', osv upp till 96-orna som ersätts med 'Cm'Googlat mig tokig men hittar inte det( uppenbara?) svaret.
count parametern kanske bara funkar på enstaka sträng istället för lista av strängar?
Kod:
import re
lista1=['1', '1', '1', '2', '2', '3', '3', '4', '5', '5', '6', '7', '7', '8', '8', '31', '31', '32', '32', '32', '32', '32', '33', '33', '34', '34', '34', '34', '34', '34', '34', '35', '35', '36', '36', '36', '36', '36', '36', '36', '37', '37', '37', '38', '38', '38', '38', '38', '38', '39', '39', '39', '40', '40', '40', '40', '40', '40', '40', '41', '41', '41', '42', '42', '42', '42', '42', '42', '42', '42', '43', '44', '44', '44', '44', '44', '44', '44', '44', '44', '45', '45', '46', '46', '46', '46', '46', '46', '46', '47', '47', '47', '47', '48', '48', '48', '48', '48', '48', '48', '48', '48', '48', '49', '49', '50', '50', '50', '50', '50', '50', '50', '50', '50', '50', '50', '50', '50', '50', '51', '51', '51', '51', '51', '52', '52', '52', '52', '52', '52', '52', '52', '52', '52', '52', '52', '52', '53', '53', '53', '53', '53', '54', '54', '54', '54', '54', '54', '54', '54', '54', '54', '55', '55', '55', '55', '55', '56', '56', '56', '56', '56', '56', '56', '56', '57', '57', '57', '58', '58', '58', '58', '58', '58', '58', '59', '59', '59', '60', '60', '60', '60', '60', '60', '60', '60', '61', '61', '61', '61', '61', '62', '62', '62', '62', '62', '62', '62', '62', '62', '63', '63', '63', '63', '63', '63', '63', '64', '64', '64', '64', '64', '64', '64', '64', '65', '65', '66', '66', '66', '66', '66', '66', '66', '67', '67', '68', '68', '68', '68', '68', '68', '92', '92', '92', '92', '92', '92', '92', '92', '92', '92', '93', '93', '93', '93', '93', '94', '94', '94', '94', '94', '94', '94', '94', '94', '95', '95', '95', '95', '95', '95', '96', '96', '96', '96', '96', '96', '96', '96', '96', '96', '96']
nylist=[]
for string in lista1:
nystring=string.replace('1','H',3)
nylist.append(nystring)
print(nylist)
['H', 'H', 'H', '2', '2', '3', '3', '4', '5', '5', '6', '7', '7', '8', '8', '3H', '3H', '32', '32', '32', '32', '32', '33', '33', '34', '34', '34', '34', '34', '34', '34', '35', '35', '36', '36', '36', '36', '36', '36', '36', '37', '37', '37', '38', '38', '38', '38', '38', '38', '39', '39', '39', '40', '40', '40', '40', '40', '40', '40', '4H', '4H', '4H', '42', '42', '42', '42', '42', '42', '42', '42', '43', '44', '44', '44', '44', '44', '44', '44', '44', '44', '45', '45', '46', '46', '46', '46', '46', '46', '46', '47', '47', '47', '47', '48', '48', '48', '48', '48', '48', '48', '48', '48', '48', '49', '49', '50', '50', '50', '50', '50', '50', '50', '50', '50', '50', '50', '50', '50', '50', '5H', '5H', '5H', '5H', '5H', '52', '52', '52', '52', '52', '52', '52', '52', '52', '52', '52', '52', '52', '53', '53', '53', '53', '53', '54', '54', '54', '54', '54', '54', '54', '54', '54', '54', '55', '55', '55', '55', '55', '56', '56', '56', '56', '56', '56', '56', '56', '57', '57', '57', '58', '58', '58', '58', '58', '58', '58', '59', '59', '59', '60', '60', '60', '60', '60', '60', '60', '60', '6H', '6H', '6H', '6H', '6H', '62', '62', '62', '62', '62', '62', '62', '62', '62', '63', '63', '63', '63', '63', '63', '63', '64', '64', '64', '64', '64', '64', '64', '64', '65', '65', '66', '66', '66', '66', '66', '66', '66', '67', '67', '68', '68', '68', '68', '68', '68', '92', '92', '92', '92', '92', '92', '92', '92', '92', '92', '93', '93', '93', '93', '93', '94', '94', '94', '94', '94', '94', '94', '94', '94', '95', '95', '95', '95', '95', '95', '96', '96', '96', '96', '96', '96', '96', '96', '96', '96', '96']
** Process exited - Return Code: 0 **
Press Enter to exit terminal
** Process exited - Return Code: 0 **
Press Enter to exit terminal
String.replace behandlar en sträng och count-argumentet begränsar enbart antalet ersättningar i strängen. I din kod ger du funktionen en sträng från en lista.
Är det som du vill göra att byta ut atomnummer mot atombeteckningar?
I så fall bör du göra en dict där nyckel är atomnumret du ska omvandla från och värdet är atombeteckningen. Sen är bara att köra din lista och byta ut varje atomnummer mot atombeteckningen i dicten.