답변:
f 문자열 형식화 :
이것은 Python 3.6의 새로운 기능입니다. 문자열은 평소와 같이 따옴표로 묶고 원시 문자열 f'...
과 동일한 방식으로 앞에 붙습니다 r'...
. 그런 다음 문자열, 변수, 숫자, 중괄호 안에 넣고 싶은 것을 배치하면 f'some string text with a {variable} or {number} within that text'
파이썬은 이전 문자열 형식화 방법과 마찬가지로 평가합니다.이 방법은 훨씬 읽기 쉽습니다.
>>> a = 3.141592
>>> print(f'My number is {a:.2f} - look at the nice rounding!')
My number is 3.14 - look at the nice rounding!
이 예 에서 이전 문자열 형식화 방법과 유사한 방식으로 소수점 이하 자릿수 로 형식화하는 것을 볼 수 있습니다 .
NB a
는 숫자, 변수 또는 식일 수 있습니다 (예 :) f'{3*my_func(3.14):02f}'
.
앞으로 새로운 코드를 사용하면 f- 문자열을 훨씬 더 읽기 쉽고 훨씬 빠르기 때문에 일반적인 % s 또는 str.format () 메서드보다 f- 문자열을 선호합니다 .
문자열 형식화 :
a = 6.789809823
print('%.2f' %a)
또는
print ("{0:.2f}".format(a))
라운드 기능을 사용할 수 있습니다 :
print(round(a, 2))
round ()의 좋은 점은이 결과를 다른 변수에 저장 한 다음 다른 목적으로 사용할 수 있다는 것입니다.
b = round(a, 2)
print(b)
round
. 표시 용도로만 사용해서는 안됩니다 .
round(5.0001, 2)
-> 5.0
, not'5.00'
나는 그것이 오래된 질문이라는 것을 알고 있지만, 스스로 답을 찾는 데 어려움을 겪고있었습니다. 다음은 내가 생각해 낸 것입니다.
파이썬 3 :
>>> num_dict = {'num': 0.123, 'num2': 0.127}
>>> "{0[num]:.2f}_{0[num2]:.2f}".format(num_dict)
0.12_0.13
입력을 호출 할 때 소수점 이하 두 자리가 제한된 부동 소수점 값을 얻으려면,
이것을 확인하십시오 ~
a = eval(format(float(input()), '.2f')) # if u feed 3.1415 for 'a'.
print(a) # output 3.14 will be printed.
eval
그냥 문자열 할 수 round
있습니까? 당신이 공급하면 이후 어쨌든 이것도 제대로 작동하지 않습니다 5
, 당신이 얻는 5.0
대신 5.00
영업 이익은 원처럼.
nan
와 inf
.
d=3
, 다음 구문은"{:.{}f}".format(5, d)