Kiểu dữ liệu chuỗi trong Python - Phần 1

Lập trình Python cơ bản

5.0 (73 đánh giá)
Tạo bởi Kteam Cập nhật lần cuối 3 năm trước 202.496 lượt xem 60 bình luận
Tác giả/Dịch giả: Kteam Nông Thanh Toàn
Học nhanh

Danh sách bài học

01. Giới thiệu ngôn ngữ lập trình Python 02. Cài đặt môi trường Python 03. Cách chạy chương trình Python 04. Cách ghi chú trong Python 05. Biến trong Python 06. Kiểu dữ liệu số trong Python 07. Kiểu dữ liệu chuỗi trong Python - Phần 1 08. Kiểu dữ liệu chuỗi trong Python - Phần 2 09. Kiểu dữ liệu chuỗi trong Python - Phần 3 10. Kiểu dữ liệu chuỗi trong Python - Phần 4 11. Kiểu dữ liệu chuỗi trong Python - Phần 5 12. Kiểu dữ liệu List trong Python - Phần 1 13. Kiểu dữ liệu List trong Python - Phần 2 14. Kiểu dữ liệu Tuple trong Python 15. Sự khác nhau về toán tử của Hashable object và Unhashable object trong Python 16. Kiểu dữ liệu Set trong Python 16. Kiểu dữ liệu Set trong Python – Phần 2 17. Kiểu dữ liệu Dict trong Python - Phần 1 18. Kiểu dữ liệu Dict trong Python - Phần 2 19. Xử lý file trong Python 20. Iteration và một số hàm hỗ trợ cho iteration object trong Python 21. Nhập xuất trong Python - Hàm xuất 22. Nhập xuất trong Python - Hàm nhập 23. Kiểu dữ liệu Boolean trong Python 24. Cấu trúc rẽ nhánh trong Python 25. Vòng lặp While trong Python 26. Vòng lặp For trong Python - Phần 1 27. Vòng lặp For trong Python - Phần 2 28. Kiểu dữ liệu Function trong Python - Sơ lược về hàm 29. Kiểu dữ liệu Function trong Python - Positional và keyword argument 30. Kiểu dữ liệu Function trong Python - Packing và unpacking arguments 31. Kiểu dữ liệu Function trong Python - Biến locals và globals 32. Kiểu dữ liệu Function trong Python - Return 33. Kiểu dữ liệu function trong Python – Yield 34. Kiểu dữ liệu function trong Python – Lambda 35. Kiểu dữ liệu Function trong Python - Functional tools 36. Kiểu dữ liệu Function trong Python - Đệ quy (recursion) 37. Giới thiệu module trong Python 38. Package trong python

Kiểu dữ liệu chuỗi trong Python - Phần 1

Trong các bài trước, Kteam đã giới thiệu đến bạn KIỂU DỮ LIỆU SỐ trong Python

Ở bài này chúng ta sẽ bắt đầu tìm hiểu đến các KIỂU DỮ LIỆU CHUỖI trong Python. Một trong những kiểu dữ liệu cực kì quan trọng trong Python.


Nội dung chính

Để đọc hiểu bài này tốt nhất bạn cần:

Trong bài học này, chúng ta sẽ cùng tìm hiểu các vấn đề:

  • Chuỗi là gì?
  • Sự khác nhau giữa ‘ ’ và “ ”.
  • Chuỗi nhiều dòng với ‘’’ và “””. Khái niệm Docstring.
  • Escape Sequence là gì?
  • Câu hỏi củng cố

Chuỗi là gì?

Trong Python, chuỗi là những thứ được đặt trong cặp dấu ‘ ’, hoặc “ ”,  có thể cũng là trong cặp  ‘’’ ‘’’, “”” “””. Nhưng cơ bản và thường đường sử dụng nhất là cặp ‘ ‘ và “ “.

Ví dụ:


Sự khác nhau giữa ‘’ và “”

Nói về công dụng, thì hai cặp dấu nháy trên là tương đương. Những thứ nằm bên trong nó là một chuỗi.

Nhưng không có thứ gì sinh ra là để cho có. Hãy đặt vấn đề bạn muốn có chuỗi với nội dung sau đây và bạn muốn Python hiểu đó là một chuỗi

I’m Beginner

Hãy nhìn lại và phân tích tại sao lại có lỗi xảy ra???

Khi bạn gõ ’I’m Beginner’. Python sẽ đọc từ trái qua phải và lấy từng kí tự trong chuỗi của bạn và việc này sẽ dừng lại khi nó gặp được dấu ‘ còn lại.

Có nghĩa là nó sẽ đọc được chuỗi ‘I’ sau đó kết thúc. Nhưng ta lại còn có một đoạn ở phía sau `m Beginner’`. Thứ này với Python hoàn toàn vô nghĩa. Nó không hiểu được ý của bạn. Do đó một SyntaxError được thông báo lên.

Vậy, làm cách nào để ta có thể có được chuỗi với nội dung I’m Beginner???

Ta có 3 cách cơ bản để giải quyết vấn đề này. Và ngay sau đây, mình sẽ giới thiệu cách đơn giản nhất.

Ta sẽ lựa chọn cặp dấu ngoặc “ “ khi nội dung chuỗi của chúng ta có những kí tự ‘, và sẽ chọn cặp dấu ngoặc ‘’ nếu nội dung chuỗi của chúng ta có những kí tự “.

Bạn có thể có câu hỏi rằng: “Nếu nội dung trong chuỗi  vừa có kí tự “, lại vừa có kí tự ‘, thì ta phải chọn cặp dấu ngoặc nào?”.

Kteam sẽ nợ bạn câu hỏi này vào phần sau. Theo dõi phần tiếp theo sẽ có câu trả lời từ Kteam nhé!


Chuỗi nhiều dòng với ‘’’ và “””. Khái niệm Docstring

Chuỗi nhiều dòng với ‘’’ và “””

Thường khi nhắc đến chuỗi, ta hay nghĩ tới một dòng. Và khi đó, ta sử dụng cặp dấu ‘ ’ hoặc “ ”.  Nếu là nhiều dòng chuỗi kết nối với nhau, như những câu chữ  bạn hay viết trong những cuốn vở thì đó cũng là một chuỗi, nhưng chuỗi đó sẽ được đặt trong cặp dấu ‘’’ và “””.

Hãy khoan nói về việc tại sao kết quả chúng ta mong muốn phải qua tay hàm print. Nếu để ý, những lần chúng ta nhấn phím enter để xuống dòng, nhập tiếp dòng tiếp theo. Ở đó sẽ được thêm vào 2 kí tự \ n.

Sự thật, \n được coi là một kí tự. Và đây chính là một escape sequence. Để hiểu rõ nó ra sao, Kteam sẽ giới thiệu với các bạn ở phần tiếp theo.

Quay trở lại, chúng ta đã biết muốn có nhiều dòng chuỗi kết hợp với nhau, ta sử dụng cặp dấu “”” hoặc ‘’’. Và đương nhiên, những thứ đặt trong cặp dấu ‘’’ hoặc “”” cũng là một chuỗi. Do đó, ta cũng có thể tạo ra chuỗi chỉ một dòng và chứa những kí tự ‘ và “ khác.

Có thể, một trong số các bạn sẽ bất ngờ với kết quả. Vì sao lại vậy nhỉ? Lại một lần nữa, vấn đề này liên quan tới escape sequence, thứ mà chúng ta sẽ tìm hiểu tiếp theo sau.


Khái niệm Docstring

Thêm một nội dung liên quan đến cặp dấu ‘’’ và “”” nữa Kteam muốn giới thiệu với các bạn. Hai cặp dấu này thường không được sử dụng để tạo ra một chuỗi nhiều dòng, mà dùng để làm DOCSTRING

Docstring là :

  • Một dạng chú thích nhiều dòng.
  • Hay xuất hiện ở đầu một file Python, sau một dòng định nghĩa lớp, hàm.
  • Và đây cũng là một trong những chuẩn quy ước về định dạng, trình bày code Python.

Escape Sequence là gì?

Escape Sequence là một chuỗi (chính xác là kí tự) đặc biệt trong Python. Bắt đầu với một dấu \.

Python có rất nhiều các escape sequence. Tuy nhiên, Kteam sẽ giới thiệu một số escape sequence chúng ta hay sử dụng nhất đới với mức độ cơ bản.

Kiểu dữ liệu chuỗi trong Python - Phần 1

Kteam sẽ giúp bạn hiểu hơn về những escape sequence này. Nhớ là, nó phải được qua tay hàm print và hàm này sẽ được Kteam đề cập ở bài Nhập xuất trong Python.


Củng cố bài học

Đáp án bài trước

Bạn có thể tìm thấy câu hỏi của phần này tại CÂU HỎI CỦNG CỐ trong bài KIỂU DỮ LIỆU SỐ TRONG PYTHON.

  1. Kiểu dữ liệu số thuộc lớp
  2. Biến a là số nguyên thuộc lớp , còn biến b là số thực thuộc lớp float
  3. Vì kết quả của hàm trunc sẽ trả về một số nguyên là phần nguyên của phép chia, còn toán tử // thì kết quả sẽ cũng là số nguyên nhưng luôn luôn nhỏ hơn hoặc bằng kết quả.
  • Ở trường hợp đầu tiên là

15 / - 4

Thì kết quả ta được

-3.75

Ta lấy phần nguyên bằng hàm trunc thì sẽ có kết quả là -3. Riêng với toán tử // sẽ làm tròn. Một là -3, hai là -4. Vì -4 < -3.75 do đó kết quả sẽ được là -4. Hai kết quả khác nhau

  • Ở trường hợp thứ hai

15 / 4 thì kết quả sẽ là

3.75

Hàm trunc sẽ lấy phần nguyên là 3. Toán tử // sẽ làm tròn. 3 hoặc là 4, mà 3 < 3.75, do đó kết quả là 3. Hai kết quả giống nhau.


Câu hỏi củng cố

  1. Những chuỗi nào sau đây là hợp lệ?
  1. Sự khác nhau giữa hai biến a và b dưới đây là gì? 
  1. Chỉ ra các Escape Sequence trong những giá trị sau đây

Đáp án của phần này sẽ được trình bày ở bài tiếp theo. Tuy nhiên, Kteam khuyến khích bạn tự trả lời các câu hỏi để củng cố kiến thức cũng như thực hành một cách tốt nhất!   


Kết luận

Bài viết này đã giới thiệu sơ cho các bạn KIỂU DỮ LIỆU CHUỖI TRONG PYTHON – Phần 1.

Ở bài sau, Kteam sẽ tiếp tục nói về KIỂU DỮ LIỆU CHUỖI TRONG PYTHON (Phần 2)

Cảm ơn bạn đã theo dõi bài viết. Hãy để lại bình luận hoặc góp ý của mình để phát triển bài viết tốt hơn. Đừng quên “Luyện tập – Thử thách – Không ngại khó”.


Tải xuống

Tài liệu

Nhằm phục vụ mục đích học tập Offline của cộng đồng, Kteam hỗ trợ tính năng lưu trữ nội dung bài học Kiểu dữ liệu chuỗi trong Python - Phần 1 dưới dạng file PDF trong link bên dưới.

Ngoài ra, bạn cũng có thể tìm thấy các tài liệu được đóng góp từ cộng đồng ở mục TÀI LIỆU trên thư viện Howkteam.com

Đừng quên likeshare để ủng hộ Kteam và tác giả nhé!


Thảo luận

Nếu bạn có bất kỳ khó khăn hay thắc mắc gì về khóa học, đừng ngần ngại đặt câu hỏi trong phần bên dưới hoặc trong mục HỎI & ĐÁP trên thư viện Howkteam.com để nhận được sự hỗ trợ từ cộng đồng.

Tác giả/Dịch giả

Khóa học

Lập trình Python cơ bản

Lập trình Python cơ bản

Đánh giá

5.0
74 đánh giá
Đánh giá
5
74
4
3
2
1
0932110332 đã đánh giá 3 tháng trước

ggtuan2006 đã đánh giá 6 tháng trước

Hoang08 đã đánh giá 8 tháng trước

Amazing

Thái Sơn đã đánh giá khoảng 1 năm trước

Cảm ơn anh, anh dạy vô cùng dễ hiểu!

tadokun đã đánh giá khoảng 1 năm trước

Kteam quá tuyệt

Bình luận

Để bình luận, bạn cần đăng nhập bằng tài khoản Howkteam.

Đăng nhập
ahihi.20 đã bình luận khoảng 1 năm trước

Cho em hỏi là: Khi em làm thực hành đến phần escape sequence, trong ví dụ về \a và \b em nhập như sau: 
print('\a') và print('abcd\be') sau đó ctrl + b 
thì ở phía bên dưới báo lỗi
<0x07> và abcd<0x08>e 
Ai giúp em fix lỗi này với ạ

Timmynguyen đã bình luận 2 năm trước

lấy tài liệu ở dâu v ạ

 

hongocduyen đã bình luận 2 năm trước

Cho mình hỏi là có sự khác nhau giữa ''' và """ ko ạ?

ThuanPham2004 đã bình luận 2 năm trước

em trả lời câu hỏi làm sao để trong chuỗi vừa có dấu kép và dấu ngoặc đơn 

example : 

a =  ' i'm \"beginner '

có sai gì nhờ admin và mng sửa ^^  

kn1617 đã bình luận 2 năm trước

<3

Không có video.