Python có hàm unichr()
(hoặc chr()
trong Python 3) lấy một số nguyên và trả về một ký tự có điểm mã Unicode của số đó. Rust có chức năng tương đương không?Rust có tương đương với hàm unichr() của Python không?
8
A
Trả lời
13
Chắc chắn, mặc dù nó là một built-in hành as
:
let c: char = 97 as char;
println!("{}", c); // prints "a"
Lưu ý rằng as
điều hành chỉ hoạt động cho u8
số, cái gì khác sẽ gây ra một lỗi biên dịch:
let c: char = 97u32 as char; // error: only `u8` can be cast as `char`, not `u32`
Nếu bạn cần một chuỗi (để mô phỏng đầy đủ chức năng Python), sử dụng to_string()
:
let s: String = (97 as char).to_string();
Ngoài ra còn có các chức năng char::from_u32
:
use std::char;
let c: Option<char> = char::from_u32(97);
Nó trả về một Option<char>
bởi vì không phải tất cả các số là một điểm mã Unicode hợp lệ - những con số chỉ có giá trị là 0x0000 để 0xD7FF và từ 0xE000 để 0x10FFFF. Chức năng này được áp dụng cho một tập hợp các giá trị lớn hơn as char
và có thể chuyển đổi các số lớn hơn một byte, cung cấp cho bạn quyền truy cập vào toàn bộ phạm vi các điểm mã Unicode.
Tôi đã biên soạn một set of examples on the Playground.
Các vấn đề liên quan
- 1. Có tương đương Python của hàm conv2 của MATLAB không?
- 2. Rust có tương đương với cú pháp đọc danh sách của Python không?
- 3. Có hàm Python tương đương với hàm smooth.spline trong R
- 4. Rust có tương đương với thành phần F # typedef không?
- 5. Có hàm PHP tương đương với Python os.path.normpath() không?
- 6. Tương đương với hàm lambda của Python trong Java?
- 7. Python tương đương với hàm "ismember" của MATLAB
- 8. Tương đương với hàm perl vec() của Python
- 9. Tương đương TreeSet của Java tương đương với Python?
- 10. Có Python tương đương với HighLine không?
- 11. Python tương đương với IFNULL của MySQL
- 12. Python có tương đương với 'chuyển' không?
- 13. Python tương đương với Mclapply của R()
- 14. có Java tương đương với defaultdict của Python không?
- 15. Liệu python có tương đương với 'btoa' của Javascript '
- 16. Python tương đương với ~/.bashrc
- 17. Java tương đương với struct.pack của Python?
- 18. Python tương đương với memory_get_usage() của PHP?
- 19. Python tương đương với each_with_index của Ruby?
- 20. Python tương đương với 'method_missing' của Ruby '
- 21. Tương đương của Lisp tương đương với \ r bên trong hàm định dạng?
- 22. python tương đương tương đương
- 23. Ruby Sequel có tương đương với hàm SQL "coalesce" không?
- 24. Có scala tương đương với python của danh sách hiểu
- 25. R có tương đương với "repr" của Python (hay "prin1-to-string" của Lisp) không?
- 26. Matlab tương đương với 'không in` của Python là gì?
- 27. python tương đương với sed
- 28. Python tương đương với Sinatra
- 29. Có tương đương với PyMongo cho Python 3.2 không?
- 30. Có một Bánh tương đương với Python không?
Đủ thú vị 'cho c4 = 0xd801 làm char; println! ("{:?}", c4); 'hoạt động với cảnh báo. –
Nó hoạt động không chính xác - nó diễn giải '0xd801' như một' u8', gói giá trị quanh '1u8' và chuyển đổi thành' char'. [Ở đây] (http://is.gd/mI5wme) là một cuộc biểu tình. –
Phải, tôi chỉ có nghĩa là nó phát ra một cảnh báo và trả về một giá trị. –