Printf
Printf
모듈은 C 표준 라이브러리의 printf
와 유사한 형식화된 출력 함수를 제공합니다. 출력 스트림이나 문자열에 형식화된 출력을 허용합니다.
Printf.@printf
— Macro@printf([io::IO], "%Fmt", args...)
C printf
스타일 포맷 지정 문자열을 사용하여 args
를 출력합니다. 선택적으로, 출력 리디렉션을 위해 첫 번째 인수로 IO
를 전달할 수 있습니다.
예제
julia> @printf "Hello %s" "world"
Hello world
julia> @printf "Scientific notation %e" 1.234
Scientific notation 1.234000e+00
julia> @printf "Scientific notation three digits %.3e" 1.23456
Scientific notation three digits 1.235e+00
julia> @printf "Decimal two digits %.2f" 1.23456
Decimal two digits 1.23
julia> @printf "Padded to length 5 %5i" 123
Padded to length 5 123
julia> @printf "Padded with zeros to length 6 %06i" 123
Padded with zeros to length 6 000123
julia> @printf "Use shorter of decimal or scientific %g %g" 1.23 12300000.0
Use shorter of decimal or scientific 1.23 1.23e+07
julia> @printf "Use dynamic width and precision %*.*f" 10 2 0.12345
Use dynamic width and precision 0.12
포맷의 체계적인 사양에 대해서는 여기를 참조하십시오. 출력 대신 String
으로 결과를 얻으려면 @sprintf
를 참조하십시오.
주의사항
Inf
와 NaN
은 플래그 %a
, %A
, %e
, %E
, %f
, %F
, %g
, 및 %G
에 대해 일관되게 Inf
와 NaN
으로 출력됩니다. 또한, 부동 소수점 숫자가 두 개의 가능한 출력 문자열의 숫자 값에 동일하게 가까운 경우, 0에서 더 멀리 떨어진 출력 문자열이 선택됩니다.
예제
julia> @printf("%f %F %f %F", Inf, Inf, NaN, NaN)
Inf Inf NaN NaN
julia> @printf "%.0f %.1f %f" 0.5 0.025 -0.0078125
0 0.0 -0.007812
Julia 1.8부터 %s
(문자열) 및 %c
(문자) 너비는 textwidth
를 사용하여 계산되며, 예를 들어 제로 너비 문자를 무시하고(예: 발음 기호를 위한 결합 문자) 특정 "넓은" 문자를 너비 2
로 처리합니다(예: 이모지).
%*s
및 %0*.*f
와 같은 동적 너비 지정자는 Julia 1.10이 필요합니다.
```
Printf.@sprintf
— Macro@sprintf("%Fmt", args...)
문자열로 @printf
형식의 출력을 반환합니다.
예시
julia> @sprintf "this is a %s %15.1f" "test" 34.567
"this is a test 34.6"
Printf.Format
— TypePrintf.Format(format_str)
값을 포맷하는 데 사용할 수 있는 C printf 호환 포맷 객체를 생성합니다.
입력 format_str
은 유효한 포맷 지정자 문자와 수정자를 포함할 수 있습니다.
Format
객체는 Printf.format(f::Format, args...)
에 전달되어 포맷된 문자열을 생성하거나, Printf.format(io::IO, f::Format, args...)
에 전달되어 포맷된 문자열을 직접 io
에 출력할 수 있습니다.
편의를 위해, Printf.format"..."
문자열 매크로 형식을 사용하여 매크로 확장 시간에 Printf.Format
객체를 생성할 수 있습니다.
Printf.Format
은 Julia 1.6 이상이 필요합니다.
Printf.format
— FunctionPrintf.format(f::Printf.Format, args...) => String
Printf.format(io::IO, f::Printf.Format, args...)
제공된 args
에 printf 형식 객체 f
를 적용하고 형식화된 문자열을 반환합니다(1번째 메서드) 또는 io
객체에 직접 인쇄합니다(2번째 메서드). C printf
지원에 대한 자세한 내용은 @printf
를 참조하십시오.