- Julia 1.0 Programming Complete Reference Guide
- Ivo Balbaert Adrian Salceanu
- 347字
- 2021-06-24 14:21:42
Formatting numbers and strings
The @printf macro from the Printf package (we'll look deeper into macros in Chapter 7, Metaprogramming in Julia) takes a format string and one or more variables to substitute into this string while being formatted. It works in a manner similar to printf in C. You can write a format string that includes placeholders for variables, for example, as follows:
julia> name = "Pascal" julia> using Printf julia> @printf("Hello, %s \n", name) # returns Hello, Pascal
Because @printf now lives in another package, you have to do this using Printf first (prior to 1.0, it belonged to Base).
If you need a string as the return value, use the macro @sprintf.
The following formatting.jl script shows the most common formats:
using Printf # d for integers: @printf("%d\n", 1e5) #> 100000 x = 7.35679 # f = float format, rounded if needed: @printf("x = %0.3f\n", x) #> 7.357 aa = 1.5231071779744345 bb = 33.976886930000695 @printf("%.2f %.2f\n", aa, bb) #> 1.52 33.98 # or to create another string: str = @sprintf("%0.3f", x) show(str) #> "7.357" println() # e = scientific format with e: @printf("%0.6e\n", x) #> 7.356790e+00 # c = for characters: @printf("output: %c\n", 'α') #> output: α # s for strings: @printf("%s\n", "I like Julia") # right justify: @printf("%50s\n", "text right justified!") # p for pointers: @printf("a pointer: %p\n", 1e10) #> a pointer: 0x00000002540be400
The following output is obtained upon running the preceding script:
100000 x = 7.357 1.52 33.98 "7.357" 7.356790e+00 output: α I like Julia text right justified! a pointer: 0x00000002540be400
A special kind of string is VersionNumber, which the form v"0.3.0" (note the preceding v), with optional additional details. They can be compared, and are used for Julia's versions, but also in the package versions and dependency mechanism of Pkg (refer to the Packages section of Chapter 1, Installing the Julia Platform). If you have the code that works differently for different versions, use something as follows:
if v"0.5" <= VERSION < v"0.6-" # do something specific to 0.5 release series end
- 自然語言處理實戰:預訓練模型應用及其產品化
- Mobile Application Development:JavaScript Frameworks
- Visual FoxPro程序設計教程
- Mastering Articulate Storyline
- PyTorch Artificial Intelligence Fundamentals
- OpenCV for Secret Agents
- SEO智慧
- 鋒利的SQL(第2版)
- Android 應用案例開發大全(第3版)
- Mastering Linux Security and Hardening
- Learning YARN
- 計算機應用基礎教程(Windows 7+Office 2010)
- Hadoop大數據分析技術
- SwiftUI極簡開發
- 體驗之道:從需求到實踐的用戶體驗實戰