문자열의 구조와 형식을 유지하면서 문자열의 모든 숫자에 다른 숫자를 곱하는 방법이 필요합니다. 할 수 있습니까? 예를 들어파이썬에서 형식을 동일하게 유지하면서 문자열의 모든 숫자를 스케일하는 방법은 무엇입니까?
:이 문자열을 감안할 때
my_var = """Cat, 5, kg
Dog, 10, kg
Human, 50, kg"""
, 나는 다른 변수에 저장 다른 번호 5, 10, 50를 곱 할 수 있어야합니다.
multiplier = 2.0/10 # or 0.2
그래서 나는 새로운 문자열을 만들 multiplier
및 my_var
를 사용하려면 :
"""Cat, 1, kg
Dog, 2, kg
Human, 10, kg"""
이 나는 것 다음 사용자에게 출력.
도움이 될 것입니다!
객체 지향 솔루션으로
float
로 변경되었습니다. 각 문자열을'name','mass','units' 속성을 가진'Animal' 객체로 비 직렬화하십시오; 각 동물의 질량에'2/10'을 곱합니다. 그런 다음 문자열로 다시 직렬화하십시오. – Kevin먼저 한 줄을보십시오. 'Cat, 5, kg'문자열을 만들고 쉼표로 변환하는 방법 (https://docs.python.org/2/library/stdtypes.html#str.split), 변환 방법 [int] (https://docs.python.org/2/library/functions.html#int)를 사용하여 정수로 변환하고 [ ','.join (values)]을 사용하여 다시 가입하십시오 (https : //docs.python .org/2/library/stdtypes.html # str.join). –
@Kevin ['namedtuple']에 대한 [documentation] (https://docs.python.org/2/library/collections.html#collections.namedtuple) (https://stackoverflow.com/questions/2970608/what) -are-named-tuples-in-python) 도움이 될 것입니다. –