Python u chuỗi

Python có một lớp chuỗi tích hợp tên là "str" ​​với nhiều tính năng tiện dụng [có một mô-đun cũ hơn tên là "chuỗi" mà bạn không nên sử dụng]. Chuỗi ký tự có thể được đặt trong dấu nháy kép hoặc dấu nháy đơn, mặc dù dấu nháy đơn được sử dụng phổ biến hơn. Thoát dấu gạch chéo ngược hoạt động theo cách thông thường trong cả ký tự trích dẫn đơn và kép -- e. g. \N \' \". Một chuỗi ký tự trích dẫn kép có thể chứa các trích dẫn đơn mà không có bất kỳ phiền phức nào [e. g. "Tôi không làm điều đó"] và tương tự như vậy, chuỗi trích dẫn đơn có thể chứa dấu ngoặc kép. Một chuỗi ký tự có thể trải rộng trên nhiều dòng, nhưng phải có dấu gạch chéo ngược \ ở cuối mỗi dòng để thoát khỏi dòng mới. Chuỗi ký tự bên trong ba dấu ngoặc kép, """ hoặc ''', có thể kéo dài nhiều dòng văn bản

Các chuỗi Python là "bất biến", có nghĩa là chúng không thể thay đổi sau khi chúng được tạo [các chuỗi Java cũng sử dụng kiểu bất biến này]. Vì các chuỗi không thể thay đổi, nên chúng tôi xây dựng các chuỗi *new* khi chúng tôi biểu diễn các giá trị được tính toán. Vì vậy, ví dụ, biểu thức ['hello' + 'there'] nhận vào 2 chuỗi 'hello' và 'there' và tạo một chuỗi mới 'hellothere'

Các ký tự trong một chuỗi có thể được truy cập bằng cú pháp [ ] tiêu chuẩn và giống như Java và C++, Python sử dụng lập chỉ mục dựa trên số 0, vì vậy nếu s là 'xin chào' s[1] là 'e'. Nếu chỉ mục nằm ngoài giới hạn của chuỗi, Python sẽ báo lỗi. Kiểu Python [không giống như Perl] là tạm dừng nếu nó không thể biết phải làm gì, thay vì chỉ tạo một giá trị mặc định. Cú pháp "lát" tiện dụng [bên dưới] cũng hoạt động để trích xuất bất kỳ chuỗi con nào từ một chuỗi. Hàm len[string] trả về độ dài của một chuỗi. Cú pháp [ ] và hàm len[] thực sự hoạt động trên mọi loại trình tự -- chuỗi, danh sách, v.v. Python cố gắng làm cho các hoạt động của nó hoạt động nhất quán trên các loại khác nhau. Người mới bắt đầu sử dụng Python. không sử dụng "len" làm tên biến để tránh chặn chức năng len[]. Toán tử '+' có thể nối hai chuỗi. Lưu ý trong mã bên dưới rằng các biến không được khai báo trước -- chỉ cần gán cho chúng và bắt đầu

  s = 'hi'
  print s[1]          ## i
  print len[s]        ## 2
  print s + ' there'  ## hi there

Không giống như Java, '+' không tự động chuyển đổi số hoặc các loại khác thành dạng chuỗi. Hàm str[] chuyển đổi các giá trị thành dạng chuỗi để chúng có thể được kết hợp với các chuỗi khác

  pi = 3.14
  ##text = 'The value of pi is ' + pi      ## NO, does not work
  text = 'The value of pi is '  + str[pi]  ## yes

Đối với các số, các toán tử tiêu chuẩn, +, /, * hoạt động theo cách thông thường. Không có toán tử ++, nhưng +=, -=, v.v. công việc. Nếu bạn muốn chia số nguyên, hãy sử dụng 2 dấu gạch chéo -- e. g. 6 // 5 là 1

Chức năng "in" thường in ra một hoặc nhiều mục python theo sau là một dòng mới. Một chuỗi ký tự "thô" có tiền tố là 'r' và chuyển tất cả các ký tự qua mà không cần xử lý đặc biệt các dấu gạch chéo ngược, vì vậy r'x\nx' đánh giá thành chuỗi dài 4 'x\nx'. "in" có thể nhận một số đối số để thay đổi cách nó in ra mọi thứ [xem python. định nghĩa chức năng in org] như đặt "end" thành "" để không còn in dòng mới sau khi in xong tất cả các mục

  raw = r'this\t\n and that'

  # this\t\n and that
  print[raw]

  multi = """It was the best of times.
  It was the worst of times."""

  # It was the best of times.
  #   It was the worst of times.
print[multi]

Phương thức chuỗi

Dưới đây là một số phương thức chuỗi phổ biến nhất. Một phương thức giống như một hàm, nhưng nó chạy "trên" một đối tượng. Nếu biến s là một chuỗi thì mã s. Lower[] chạy phương thức Lower[] trên đối tượng chuỗi đó và trả về kết quả [ý tưởng về một phương thức chạy trên một đối tượng này là một trong những ý tưởng cơ bản tạo nên Lập trình hướng đối tượng, OOP]. Dưới đây là một số phương thức chuỗi phổ biến nhất

  • s. thấp hơn [], s. upper[] -- trả về phiên bản chữ thường hoặc chữ hoa của chuỗi
  • s. dải [] - trả về một chuỗi có khoảng trắng bị xóa khỏi đầu và cuối
  • s. isalpha[]/s. isdigit[]/s. không gian []. -- kiểm tra xem tất cả các ký tự chuỗi có thuộc các lớp ký tự khác nhau không
  • s. startedwith['khác'], s. endwith['other'] -- kiểm tra xem chuỗi bắt đầu hay kết thúc bằng chuỗi khác đã cho
  • s. find['other'] -- tìm kiếm chuỗi khác đã cho [không phải biểu thức chính quy] trong s và trả về chỉ mục đầu tiên nơi nó bắt đầu hoặc -1 nếu không tìm thấy
  • s. replace['old', 'new'] -- trả về một chuỗi trong đó tất cả các lần xuất hiện của 'old' đã được thay thế bằng 'new'
  • s. split['delim'] -- trả về danh sách các chuỗi con được phân tách bằng dấu phân cách đã cho. Dấu phân cách không phải là biểu thức chính quy, nó chỉ là văn bản. 'aaa, bbb, ccc'. split[','] -> ['aaa', 'bbb', 'ccc']. Như một trường hợp đặc biệt thuận tiện s. split[] [không có đối số] phân tách trên tất cả các ký tự khoảng trắng
  • s. join[list] -- đối lập với split[], nối các phần tử trong danh sách đã cho với nhau bằng cách sử dụng chuỗi làm dấu phân cách. e. g. '---'. tham gia [['aaa', 'bbb', 'ccc']] -> aaa---bbb---ccc

Tìm kiếm trên google cho "python str" sẽ dẫn bạn đến con trăn chính thức. các phương thức chuỗi org liệt kê tất cả các phương thức str

Python không có kiểu ký tự riêng. Thay vào đó, một biểu thức như s[8] trả về một chuỗi-độ dài-1 chứa ký tự. Với độ dài chuỗi-1 đó, các toán tử ==, byte_string = b'A byte string' > byte_string b'A byte string'

Chuỗi unicode là một loại đối tượng khác với chuỗi byte nhưng các thư viện khác nhau như biểu thức chính quy hoạt động chính xác nếu được chuyển qua một trong hai loại chuỗi

Để chuyển đổi một chuỗi Python thông thường thành byte, hãy gọi phương thức encode[] trên chuỗi. Đi theo hướng khác, phương thức giải mã chuỗi byte [] chuyển đổi các byte đơn giản được mã hóa thành một chuỗi unicode

  pi = 3.14
  ##text = 'The value of pi is ' + pi      ## NO, does not work
  text = 'The value of pi is '  + str[pi]  ## yes
0

Trong phần đọc tệp, có một ví dụ cho thấy cách mở tệp văn bản bằng một số bảng mã và đọc chuỗi unicode

Tuyên bố nếu

Python không sử dụng { } để đặt các khối mã cho if/loops/function, v.v. Thay vào đó, Python sử dụng dấu hai chấm [. ] và thụt đầu dòng/khoảng trắng cho các câu lệnh nhóm. Phép thử boolean cho if không cần phải nằm trong ngoặc đơn [sự khác biệt lớn so với C++/Java] và nó có thể có các mệnh đề *elif* và *else* [dễ nhớ. từ "elif" có cùng độ dài với từ "else"]

Any value can be used as an if-test. The "zero" values all count as false: None, 0, empty string, empty list, empty dictionary. There is also a Boolean type with two values: True and False [converted to an int, these are 1 and 0]. Python has the usual comparison operations: ==, !=, =. Unlike Java and C, == is overloaded to work correctly with strings. The boolean operators are the spelled out words *and*, *or*, *not* [Python does not use the C-style && || !]. Here's what the code might look like for a health app providing drink recommendations throughout the day -- notice how each block of then/else statements starts with a : and the statements are grouped by their indentation:

  pi = 3.14
  ##text = 'The value of pi is ' + pi      ## NO, does not work
  text = 'The value of pi is '  + str[pi]  ## yes
0

Tôi thấy rằng bỏ qua ". " là lỗi cú pháp phổ biến nhất của tôi khi nhập loại mã trên, có thể vì đó là một thứ bổ sung để nhập so với. thói quen C++/Java của tôi. Ngoài ra, đừng đặt kiểm tra boolean trong ngoặc đơn - đó là thói quen của C/Java. Nếu mã ngắn, bạn có thể đặt mã trên cùng một dòng sau ". ", như thế này [điều này áp dụng cho hàm, vòng lặp, v.v. cũng vậy], mặc dù một số người cảm thấy việc sắp xếp mọi thứ trên các dòng riêng biệt sẽ dễ đọc hơn

Bảng mã nào bắt đầu bằng chữ U?

Unicode hiện là tiêu chuẩn chung để mã hóa tất cả các ngôn ngữ của loài người. Và vâng, nó thậm chí còn bao gồm các biểu tượng cảm xúc. Dưới đây là một số ví dụ về các ký tự văn bản và các điểm mã phù hợp của chúng. Mỗi điểm mã bắt đầu bằng “U” cho “Unicode”, theo sau là một chuỗi ký tự duy nhất để đại diện cho ký tự.

U in Python là gì?

[u'String'] là đại diện văn bản của danh sách chứa chuỗi Unicode trên Python 2 . Nếu bạn chạy print[some_list] thì nó tương đương với. in'[%s]' % ', '. tham gia [bản đồ [repr, some_list]] tôi. e. , để tạo một biểu diễn văn bản của một đối tượng Python với kiểu list , hàm repr[] được gọi cho mỗi mục.

Chuỗi Unicode là gì?

Unicode là một hệ thống mã hóa tiêu chuẩn được sử dụng để biểu thị các ký tự từ hầu hết các ngôn ngữ. Mỗi ký tự Unicode được mã hóa bằng một điểm mã số nguyên duy nhất trong khoảng từ 0 đến 0x10FFFF. Chuỗi Unicode là một chuỗi gồm 0 hoặc nhiều điểm mã .

Làm cách nào để kiểm tra mã hóa utf 8 trong Python?

String encode[] Tham số . Nó trả về một phiên bản được mã hóa utf-8 của chuỗi. Trong trường hợp không thành công, nó sẽ tạo ra một ngoại lệ UnicodeDecodeError.

Chủ Đề