Page 23 - Python Simple
P. 23

3. Giới thiệu sơ về Python                                       http://www.vithon.org/tutorial/2.5/node5.html



             Chế độ thô sẽ hữu dụng trong trường hợp bạn phải nhập thật nhiều dấu suỵt
             huyền, như khi bạn dùng trong các biểu thức chính quy (regular expression).

             Ngoài những bảng mã chuẩn này, Python cung cấp một tập hợp các cách khác
             để tạo các chuỗi Unicode từ một bảng mã đã biết.

             Hàm có sẵn unicode() cung cấp truy cập vào tất cả bộ mã/giải mã (codec -
             COder and DECoder) Unicode đã đăng ký. Một vài bảng mã phổ thông mà các
             bộ chuyển mã này có thể chuyển gồm Latin-1, ASCII, UTF-8, và UTF-16. Hai
             bảng mã sau cùng là các bảng mã có kích thước thay đổi và chứa mỗi ký tự
             Unicode trong một hoặc nhiều byte. Bảng mã mặc định thường được thiết lập là
             ASCII, nó cho phép các ký tự từ 0 tới 127 và cấm các ký tự khác. Khi một chuỗi
             Unicode được in, viết vào tập tin, hoặc chuyển với str(), sự chuyển đổi diễn ra
             với bảng mã mặc định này.

                  >>> u"abc"
                  u'abc'
                  >>> str(u"abc")
                  'abc'
                  >>> u"äöü"
                  u'\xe4\xf6\xfc'
                  >>> str(u"äöü")
                  Traceback (most recent call last):
                    File "<stdin>", line 1, in ?
                  UnicodeEncodeError: 'ascii' codec can't encode characters in position 0-2: ordinal not in

             Để chuyển một chuỗi Unicode thành một chuỗi 8-bit bằng một bảng mã nào đó,
             các đối tượng Unicode cung cấp một phương thức encode() nhận một thông số,
             tên của bảng mã. Bạn nên dùng tên bảng mã viết thường.

                  >>> u"äöü".encode('utf-8')
                  '\xc3\xa4\xc3\xb6\xc3\xbc'

             Nếu bạn có dữ liệu trong một bảng mã nào đó và muốn tạo ra một chuỗi
             Unicode tương ứng từ nó, bạn có thể dùng hàm unicode() với tên bảng mã là
             thông số thứ hai.

                  >>> unicode('\xc3\xa4\xc3\xb6\xc3\xbc', 'utf-8')
                  u'\xe4\xf6\xfc'


             3.1.4 Danh sách


             Python biết một số kiểu dữ liệu gộp (compound) , dùng để nhóm các giá trị với
             nhau. Kiểu linh hoạt nhất là danh sách (list), có thể được viết như là một danh
             sách các giá trị phân cách bởi dấu phẩy ở giữa ngoặc vuông.

                  >>> a = ['spam', 'eggs', 100, 1234]
                  >>> a
                  ['spam', 'eggs', 100, 1234]






     9 of 12                                                                                  08/31/2011 07:38 AM
   18   19   20   21   22   23   24   25   26   27   28