BÁO-CÁO- Chuyên-ĐỀ- Python.word-1-1-2
Cong nghe thong tin (Đại học Điện lực)
Scan to open on Studocu
Studocu is not sponsored or endorsed by any college or university
BÁO-CÁO- Chuyên-ĐỀ- Python.word-1-1-2
Cong nghe thong tin (Đại học Điện lực)
Scan to open on Studocu
Studocu is not sponsored or endorsed by any college or university
Downloaded by B?p Tr??ng Thành (baptruongthanh@gmail.com)
lOMoARcPSD|50662567
TRƯỜNG ĐẠI HỌC ĐIỆN LỰC
KHOA CÔNG NGHỆ THÔNG TIN
BÁO CÁO CHUYÊN ĐỀ KẾT THÚC HỌC PHẦN
PYTHON
ĐỀ TÀI: BIỂU THỨC VÀ SỐ HỌC TRONG TRONG
PYTHON (EXPRESSSIONS AND ARITHMETIC IN
PYTHON)
Giảng viên hướng dẫn : Trần Thị Minh Thu
Sinh viên thực hiện : Nguyễn Xuân Thành -22810310360
Nguyễn Đình Hoàn - 228103103
Lớp : D17CNPM5
Ngành : Công nghệ thông tin
Chuyên ngành : Công nghệ phần mềm
Khóa : 2022-2027
1
Downloaded by B?p Tr??ng Thành (baptruongthanh@gmail.com)
lOMoARcPSD|50662567
Hà Nội, tháng 12 năm 2023
MỤC LỤC
LỜI CẢM ƠN……………………………………………………………………………4
LỜI MỞ ĐẦU……………………………………………………………………………5
CHƯƠNG 1: HƯỚNG DẪN CÀI ĐẶT VÀ SỬ DỤNG PYTHON + PYCHARM TRÊN
LINUX…………………………………………………………………………………….6
1.1.Giới thiệu về Python……………………………………………………………...6
1.1.1. Sơ lược về lịch sử phát triển ngôn ngữ lập trình Python……………………6
1.1.2. Khái niệm về Python………………………………………………………...6
1.1.3. Tính năng chính của Python…………………………………………………7
1.1.4. Ứng dụng của Python………………………………………………………...8
1.1.5. Lợi thế của việc học Python………………………………………………….9
1.1.6. Lý do nên học ngôn ngữ lập trình Python…………………………………..10
1.2. Môi trường lập trình Python……………………………………………………11
1.2.1. Python IDE là gì?...........................................................................................11
1.3. Giới thiệu về Pycharm………………………………………………………….13
1.3.1.Pycharm là gì?.................................................................................................13
1.3.2. Các tính năng của Pycharm…………………………………………………14
2.1. Hướng dẫn cài đặt và sử dụng Python+Pycharm trên linux……………………16
2.1.1. Tìm hiểu về hệ điều hành Linux……………………………………………16
2.1.2. Cách để cài đặt Ubuntu Linux……………………………………………...25
CHƯƠNG 2: BIỂU THỨC VÀ SỐ HỌC TRONG PYTHON (EXPRESSIONS AND
ARITHMETIC IN PYTHON)…………………………………………………………...36
3.1. Biểu thức (Expressions)………………………………………………………...36
3.2. Biểu thức loại hỗn hợp………………………………………………………….39
2
Downloaded by B?p Tr??ng Thành (baptruongthanh@gmail.com)
lOMoARcPSD|50662567
3.3. Độ ưu tiên của các toán tử và tính kết hợp……………………………………..39
3.4. Định dạng biểu thức…………………………………………………………..40
3.5. Bình luận………………………………………………………………………41
3.6. Lỗi……………………………………………………………………………..41
3.6.1. Lỗi cú pháp…………………………………………………………………41
3.6.2. Ngoại lệ trong thời gian chạy………………………………………………42
3.6.3. Lỗi logic……………………………………………………………………43
3.7. Số học (Arithmatic)…………………………………………………………….44
3.8. Thêm các toán tử số học………………………………………………………..46
3.9. Thuật toán………………………………………………………………………47
KẾT LUẬN……………………………………………………………………………..50
TÀI LIỆU THAM KHẢO……………………………………………………………….51
3
Downloaded by B?p Tr??ng Thành (baptruongthanh@gmail.com)
lOMoARcPSD|50662567
Lời cảm ơn
Trên thực tế,không có sự thành công nào mà không gắn liền với những sự hỗ trợ, sự giúp
đỡ dù ít hay nhiều, dù là trực tiếp hay là gián tiếp của người khác trợ, sự giúp đỡ dù ít hay
nhiều, dù là trực tiếp hay gián tiếp của người khác. Trong suốt thười gian từ khi bắt đầu
học tập ở giảng đường Đại học đã đến nay, chúng em đã nhận được rất nhiều sự quan
tâm, giúp đỡ của thầy cô, gia đình và bạn bè.
Với lòng biết ơn sâu sắc nhất, chúng em xin gửi đến thầy cô ở Khoa Công Nghệ Thông
Tin trường Đại Học Điện Lực đã cùng với trí thức và tâm huyết của mình để truyền đạt
vốn kiến thức quý báu cho chúng em trong suốt thời gian học tập tại trường. Và đặc biệt,
trong kỷ này, em được tiếp cận với môn học rất lưu ích đối với sinh viên ngành Công
Nghệ Thông Tin. Đó là môn “Ngôn ngữ lập trình Python”
Em xin chân thành cảm ơn cô Trần Thị Minh Thu đã tận tâm hưởng dân chúng em qua
từng buổi học trên lớp cũng như những buổi nói chuyện, thào luận về môn học. Trong
thời gian được học tập và thực hành dưới sự hướng dẫn của cô, em không những thu
được rất nhiều kiến thức bổ ích, mà còn được truyền sự say mê và thích thú đối với bộ
môn "Kiểm thử và đảm bảo chất lượng phần mềm. Nếu không có những lời hướng dẫn,
dạy bảo của thấy thì nhóm em nghĩ báo cáo này rất khó có thể hoàn thành được.
Xin gửi lời cảm ơn chân thành đến gia đình, bạn bè là nguồn động viên to lớn, giúp em
vượt qua những khó khăn trong quá trình học tập và thực hiện báo cáo.
Mặc dù đã rất cố gắng hoàn thiện báo cáo với tất cả sự nỗ lực. Tuy nhiên, do
bước đầu đi vào thực tế, tìm hiểu và xây dựng báo cáo trong thời gian có hạn,
kiến thức còn hạn chế, nhiều bỡ ngỡ, nên báo cáo " Biểu thức và số học trong Python
(Expressions and Arithmetic in python) chắc chắn sẽ không thể tránh khỏi những thiếu
sót. Em rất mong nhận được sự quan tâm, thông cảm và những đóng góp quý báu của
các thầy cô đểo cáo này được hoàn thiện hơn. Một lần nữa, em xin chân thành cảm
ơn và luôn mong nhận được sự đóng góp của mọi người.
Trân trọng.
4
Downloaded by B?p Tr??ng Thành (baptruongthanh@gmail.com)
lOMoARcPSD|50662567
Lời mở đầu
Ngày nay, với sức mạnh công nghệ hiện đại nhanh chóng giúp con người thoát
khỏi những khó khăn trong công việc, cuộc sống tấp nập và hối hả ta cần phải nhanh
chóng gia nhập vào thế giới, chủ động hội nhập.
Với sự phát triển nhanh chóng đó rất có nhiều công cụ hữu ích giúp chúng ta tiết
kiệm rất nhiều thời gian và chi phí. Nhiều phần mềm trong lĩnh vực công nghệ thông tin
nhanh chóng ra đời đã góp phần đáng kể.
“Công Nghệ Thông Tin” một lĩnh vực đầy tiềm năng đã đem lại cho con người
những ứng dụng thật tiện lợi và hữu ích. Một trong những ứng dụng thiết thực mà nó đem
lại là việc ứng dụng tin học vào nhiều lĩnh vực của đời sống như trong các trường học,
công ty, cơ quan, xí nghiệp, bệnh viện... phần lớn đều ứng dụng tin học để giúp cho việc
quản lý được dễ dàng và thuận tiện hơn. Trong khi đó, AI đang từng bước được mở rộng
và phát triển, nó có thể thay thế một số ngành nghề và cuộc sống của con người. Và ngôn
ngữ lập trình Python đã góp phần to lớn trong việc phát triển AI các lập trình viên thường
lựa chọn Python cho dự án về Machine Learning và AI. Lí do là bởi Python được hỗ tr
bởi các thư viện như Scikit-learn và TensorFlow, giúp đơn giản hóa quá trình triển khai
các thuật toán Machine Learning. Đồng thời, Python còn sở hữu nhiều thư viện chuyên
biệt, giúp lập trình viên thực hiện mọi tác vụ Machine Learning từ những đơn giản đến
những phức tạp,thông qua các thuật toán logic. Vì thế mà nhóm em chọn đề tài ” Biểu
thức và số học trong Python (Expressions and Arithmetic in python) “ làm đề tài nghiên
cứu của mình.
5
Downloaded by B?p Tr??ng Thành (baptruongthanh@gmail.com)
lOMoARcPSD|50662567
CHƯƠNG 1. HƯỚNG DẪN CÀI ĐẶT VÀ SỬ DỤNG PYTHON + PYCHARM
TRÊN LINUX
1.1. Giới thiệu về python
1.1.1. Sơ lược về lịch sử phát triển ngôn ngữ lập trình Python.
Python được phát triển vào cuối những năm 1980 bởi Guido van Rossum tại Viện
Nghiên cứu Quốc gia về Toán học và Khoa học Máy tính ở Hà Lan với tư cách là
người kế thừa ngôn ngữ ABC có khả năng xử lý và giao tiếp ngoại lệ.
Python có nguồn gốc từ các ngôn ngữ lập trình như ABC, Modula 3, small talk,
Algol-68.
Van Rossum đã chọn tên Python cho ngôn ngữ mới từ một chương trình truyền
hình, Monty Python’s Flying Circus.
Trang Python là một tệp có phần mở rộng .py chứa có thể là sự kết hợp của Thẻ
HTML và tập lệnh Python.
Vào tháng 12 năm 1989, người sáng tạo đã phát triển trình thông dịch python đầu
tiên như một sở thích, và sau đó vào ngày 16 tháng 10 năm 2000, Python 2.0 được
phát hành với nhiều tính năng mới.
Vào ngày 3 tháng 12 năm 2008, Python 3.0 được phát hành với nhiều thử nghiệm
hơn và bao gồm các tính năng mới.
Python là một ngôn ngữ kịch bản mã nguồn mở.
Python là mã nguồn mở, có nghĩa là bất kỳ ai cũng có thể tải xuống miễn phí từ
trang chủ và sử dụng nó để phát triển các chương trình. Mã nguồn của nó có thể
được truy cập và sửa đổi theo yêu cầu trong dự án.
Python là một trong những ngôn ngữ chính thức tại Google.
1.1.2. Khái niệm về Python
Đầu tiên, Python là gì? Python là ngôn ngữ lập trình máy tính bậc cao thường được sử
dụng để xây dựng trang web và phần mềm, tự động hóa các tác vụ và tiến hành phân tích
dữ liệu. Python là ngôn ngữ có mục đích chung, nghĩa là nó có thể được sử dụng để tạo
nhiều chương trình khác nhau và không chuyên biệt cho bất kỳ vấn đề cụ thể nào.
6
Downloaded by B?p Tr??ng Thành (baptruongthanh@gmail.com)
lOMoARcPSD|50662567
Tính linh hoạt này, cùng với sự thân thiện với người mới bắt đầu, đã khiến nó trở thành
một trong những ngôn ngữ lập trình được sử dụng nhiều nhất hiện nay. Một cuộc khảo
sát được thực hiện bởi công ty phân tích ngành RedMonk cho thấy rằng đây là ngôn ngữ
lập trình phổ biến thứ hai đối với các nhà phát triển vào năm 2021.
1.1.3. Tính năng chính của Python
Ngôn ngữ lập trình đơn giản, dễ học: Python có cú pháp rất đơn giản, rõ ràng. Nó dễ đọc
và viết hơn rất nhiều khi so sánh với những ngôn ngữ lập trình khác như C++, Java, C#.
Python làm cho việc lập trình trở nên thú vị, cho phép bạn tập trung vào những giải pháp
chứ không phải cú pháp.
- Miễn phí, mã nguồn mở: Bạn có thể tự do sử dụng và phân phối Python, thậm chí
là dùng cho mục đích thương mại. Vì là mã nguồn mở, bạn không những có thể sử
dụng các phần mềm, chương trình được viết trong Python mà còn có thể thay đổi
mã nguồn của nó. Python có một cộng đồng rộng lớn, không ngừng cải thiện nó
mỗi lần cập nhật.
- Khả năng di chuyển: Các chương trình Python có thể di chuyển từ nền tảng này
sang nền tảng khác và chạy nó mà không có bất kỳ thay đổi nào. Nó chạy liền mạch
trên hầu hết tất cả các nền tảng như Windows, macOS, Linux.
- Khả năng mở rộng và có thể nhúng: Giả sử một ứng dụng đòi hỏi sự phức tạp rất
lớn, bạn có thể dễ dàng kết hợp các phần code bằng C, C++ và những ngôn ngữ
khác (có thể gọi được từ C) vào code Python. Điều này sẽ cung cấp cho ứng dụng
của bạn những tính năng tốt hơn cũng như khả năng scripting mà những ngôn ngữ
lập trình khác khó có thể làm được.
- Ngôn ngữ thông dịch cấp cao: Không giống như C/C++, với Python, bạn không
phải lo lắng những nhiệm vụ khó khăn như quản lý bộ nhớ, dọn dẹp những dữ liệu
vô nghĩa,... Khi chạy code Python, nó sẽ tự động chuyển đổi code sang ngôn ngữ
máy tính có thể hiểu. Bạn không cần lo lắng về bất kỳ hoạt động ở cấp thấp nào.
- Thư viện tiêu chuẩn lớn để giải quyết những tác vụ phổ biến: Python có một số
lượng lớn thư viện tiêu chuẩn giúp cho công việc lập trình của bạn trở nên dễ thở
hơn rất nhiều, đơn giản vì không phải tự viết tất cả code. Ví dụ: Bạn cần kết nối cơ
sở dữ liệu MySQL trên Web server? Bạn có thể nhập thư viện MySQLdb và sử
dụng nó. Những thư viện này được kiểm tra kỹ lưỡng và được sử dụng bởi hàng
trăm người. Vì vậy, bạn có thể chắc chắn rằng nó sẽ không làm hỏng code hay ứng
dụng của mình.
- ớng đối tượng: Mọi thứ trong Python đều là hướng đối tượng. Lập trình hướng
đối tượng (OOP) giúp giải quyết những vấn đề phức tạp một cách trực quan. Với
OOP, bạn có thể phân chia những vấn đề phức tạp thành những tập nhỏ hơn bằng
cách tạo ra các đối tượng.
7
Downloaded by B?p Tr??ng Thành (baptruongthanh@gmail.com)
lOMoARcPSD|50662567
1.1.4. Ứng dụng của Python
Python thường được sử dụng để phát triển trang web phần mềm, tự động hóa tác vụ,
phân tích dữ liệu trực quan hóa dữ liệu. tương đối dễ học, Python đã được nhiều
người không phải lập trình viên như kế toán nhà khoa học áp dụng cho nhiều công
việc hàng ngày, chẳng hạn như tổ chức tài chính.
Phân tích dữ liệu và học máy
Python đã trở thành một yếu tố chính trong khoa học dữ liệu, cho phép các nhà phân tích
dữ liệu và các chuyên gia khác sử dụng ngôn ngữ này để thực hiện các phép tính thống kê
phức tạp, tạo trực quan hóa dữ liệu, xây dựng thuật toán học máy, thao tác phân tích
dữ liệu cũng như hoàn thành các nhiệm vụ khác liên quan đến dữ liệu.
Python có thể xây dựng nhiều dạng trực quan hóa dữ liệu khác nhau, chẳng hạn như biểu
đồ đường thanh, biểu đồ hình tròn, biểu đồ 3D. Python cũng một số thư viện cho
phép các lập trình viên viết chương trình để phân tích dữ liệu học máy nhanh hơn
hiệu quả hơn, như TensorFlow và Keras.
Phát triển web
Python thường được sử dụng để phát triển back-end của trang web hoặc ứng dụng-những
phần mà người dùng không nhìn thấy. Vai trò của Python trong phát triển web có thể bao
gồm gửi dữ liệu đến đi từ máy chủ, xử dữ liệu giao tiếp với sở dữ liệu, định
tuyến URL đảm bảo tính bảo mật. Python cung cấp một số khuôn khổ để phát triển
web. Những cái thường được sử dụng bao gồm Django và Flask.
Một số công việc phát triển web sử dụng Python bao gồm kỹ phụ trợ, nhà phát triển
Python, kỹ sư phần mềm và kỹ sư DevOps.
Tự động hoá và phát triển phần mềm
Nếu bạn thấy mình thực hiện một nhiệm vụ lặp đi lặp lại, bạn thể làm việc hiệu quả
hơn bằng cách tự động hóa bằng Python. Quá trình viết code được sử dụng để xây
dựng các quy trình tự động này được gọi viết script. Trong thế giới hóa, tự động
hóa thể được sử dụng để kiểm tra lỗi trên nhiều tệp, chuyển đổi tệp, thực hiện phép
toán đơn giản và loại bỏ các bản sao trong dữ liệu.
8
Downloaded by B?p Tr??ng Thành (baptruongthanh@gmail.com)
lOMoARcPSD|50662567
Phát triển phần mềm
Python thậm chí thể được sử dụng bởi những người mới bắt đầu để tự động hóa các
tác vụ đơn giản trên máy tính—chẳng hạn như đổi tên tệp, tìm và tải xuống nội dung trực
tuyến hoặc gửi email hoặc văn bản theo khoảng thời gian mong muốn. Trong phát triển
phần mềm, Python thể hỗ trợ các tác vụ như kiểm soát bản dựng, theo dõi lỗi thử
nghiệm. Với Python, các nhà phát triển phần mềm thể tự động kiểm tra các sản phẩm
hoặc tính năng mới. Một số công cụ Python được s dụng để kiểm thử phần mềm bao
gồm Green và Requestium.
1.1.5. Lợi thế của việc học Python
Python một ngôn ngữ dễ đọc đơn giản để hiểu cho các nhà phát triển chưa bao giờ
viết code. Do đó, cộng đồng người dùng Python không ngừng phát triển và lớn mạnh. Có
rất nhiều học giả giáo trong cộng đồng người dùng Python. vậy, khi xảy ra sự
cố, nhà phát triển thể tập trung vào vấn đề đó nhận trợ giúp từ những người khác
trong cộng đồng mà không phải lo lắng về sự phức tạp của ngôn ngữ.
Python một ngôn ngữ lập trình miễn phí mở. Giấy phép nguồn mở được OSI phê
chuẩn Python được phát triển theo đó làm cho Python trở thành ngôn ngữ tự do sử
dụng phân phối, kể cả cho mục đích thương mại. sẽ làm giảm chi phí của bạn để
bảo trì. Trong khi các nhà phát triển có thể chia sẻ, sao chép và thay đổi nó. Đối với cộng
đồng Python, đây là cơ hội để chia sẻ kiến thức với các chuyên gia cấp dưới.
9
Downloaded by B?p Tr??ng Thành (baptruongthanh@gmail.com)
lOMoARcPSD|50662567
Python vô cùng dễ học
Các lập trình viên nói rằng Python rất dễ sử dụng. Mặc khi xây dựng các ứng dụng
hoặc trò chơi dành cho thiết bị di động, C++ hoặc bất kỳ ngôn ngữ kịch bản điển hình
nào khác có thể dễ sử dụng hơn, nhưng Python sẽ tốt hơn để dễ dàng xây dựng các
ứng dụng phía máy chủ, tự động hóa hệ thống xây dựng và thu thập dữ liệu thử nghiệm.
Python có nhiều lựa chọn thư viện và framework, đây là một trong những lợi thế lớn nhất
của Python. Từ NumPy đến TensorFlow, thư viện Python được sử dụng cho mọi thứ từ
trực quan hóa dữ liệu, học máy, khoa học dữ liệu, xử ngôn ngữ tự nhiên phân tích
dữ liệu phức tạp.
Nó sở hữu một thư viện lớn với khả năng quản lý bộ nhớ và thiết kế trống giúp tăng năng
suất của nhà phát triển Python. Nhờ đó, các nhà phát triển có thể quản lý cơ sở dữ liệu, tài
liệu, trình duyệt web; thực hiện kiểm tra đơn vị nhiều chức năng khác. Ngoài ra,
Python thể được sử dụng để phát triển nhiều tác vụ, chẳng hạn như phát triển ứng
dụng web máy tính để bàn, phát triển các hệ thống tính toán phức tạp, hệ thống quản
lý hỗ trợ cuộc sống, Internet of Things (IoT), trò chơi, v.v.
1.1.6. Lý do nên học ngôn ngữ lập trình Python
Với những tính năng kể trên, Python mang nhiều ưu điểm để những người mới bắt đầu
học ngôn ngữ lập trình nên lựa chọn:
Là ngôn ngữ lập trình phổ biến nhất:
Python được coi là ngôn ngữ lập trình phổ biến hiện nay. Được xuất hiện vào đầu năm
199, trải qua sự phát triển và trưởng thành, Python đã trở thành ngôn ngữ lập trình cực kỳ
thân thiện với người dùng. Hàng ngàn người đã sử dụng chúng trong kiểm thử vi mạch,
trong các ứng dụng điện thoại, xây dựng các video game...
Rất nhiều "anh tài" sử dụng Python
10
Downloaded by B?p Tr??ng Thành (baptruongthanh@gmail.com)
lOMoARcPSD|50662567
Có thể nói, hiếm có ngôn ngữ lập trình nào như Python được sử dụng bởi nhiều các tên
tuổi lớn như vậy. Cụ thể, các thương hiệu sử dụng Python trong quá trình phát triển và
thử nghiệm như: Uber, Google, Paypal, Facebook, Instagram, Netflix, Dropbox…
Sử dụng linh hoạt trong nhiều mảng lập trình
Không chỉ nổi tiếng với mảng lập trình web, Python còn là ngôn ngữ được sử dụng rộng
rãi trong lập trình robot và các hệ thống nhúng.
Là bước đệm để học thêm các ngôn ngữ lập trình khác
Python thân thiện với người dùng và hòa đồng với cả những ngôn ngữ lập trình khác.
Như bạn đã biết, Python là ngôn ngữ hướng đối tượng có ứng dụng đa dạng. Và nếu bạn
nắm rõ Python thì sẽ dễ dàng hơn khi học thêm các ngôn ngữ lập trình khác.
Python được hỗ trợ rất tốt
Với sự phổ biến của mình nên Python sở hữu cộng đồng hỗ trợ trực tuyến cực tốt. Có rất
nhiều các trang web hỗ trợ người dùng Python cực tốt như: The Official Python Tutorial,
Stack Overflow...
Cơ hội nghề nghiệp rộng mở với mức lương cao
Nếu thành thạo Python thì các lập trình viên hoàn toàn có thể sở hữu những công việc
cực tốt với mức lương siêu khủng. Và nếu có vốn ngoại ngữ tốt thì việc làm việc tại nước
ngoài hay các công ty liên doanh, công ty nước ngoài là điều cực kỳ bình thường.
Python hoàn toàn miễn phí
Ngôn ngữ lập trình nào cũng miễn phí. Sự khác biệt giữa Python với các ngôn ngữ khác
chính là việc nó hoàn toàn tương thích với các phần mềm mã nguồn mở (Open Sourse và
GPL) vì Python cũng là mã nguồn mở.
Bài viết trên đây ITPlus đã tổng hợp những thông tin cơ bản về Python, hy vọng bạn đọc
có thể hiểu rõ hơn về ngôn ngữ lập trình phổ biến này.
1.2.Môi trường lập trình Python
1.2.1. Python IDE là gì?
Môi trường phát triển tích hợp (IDE) là phần mềm cung cấp cho các nhà phát triển công
cụ duy nhất họ cần để viết, chỉnh sửa, kiểm tra và gỡ lỗi mã.
PyCharm
JetBrains, một công ty phát triển công cụ phần mềm tại Séc, đã tạo ra PyCharm. Nó có
một phiên bản cộng đồng miễn phí phù hợp với các ứng dụng Python nhỏ và một phiên
bản chuyên nghiệp trả phí dành cho việc xây dựng các ứng dụng Python quy mô lớn, với
đầy đủ những tính năng sau:
Tự động hoàn thành và kiểm tra mã
Xử lý lỗi và sửa lỗi nhanh chóng
Làm sạch mã mà không thay đổi chức năng
Hỗ trợ các khung ứng dụng web như Django và Flask
11
Downloaded by B?p Tr??ng Thành (baptruongthanh@gmail.com)
lOMoARcPSD|50662567
Hỗ trợ các ngôn ngữ lập trình khác, chẳng hạn như JavaScript, CoffeeScript,
TypeScript, AngularJS và Node
Các công cụ và thư viện khoa học như Matplotlib và NumPy
Khả năng chạy, gỡ lỗi, kiểm thử và triển khai các ứng dụng trong máy ảo từ xa
Trình gỡ lỗi để tìm lỗi trong mã, trình kiểm tra để xác định các vấn đề về hiệu suất
trong mã và trình chạy thử nghiệm để chạy các bài kiểm thử đơn vị
Hỗ trợ cơ sở dữ liệu
IDLE
Môi trường phát triển và học hỏi tích hợp (IDLE) là Python IDE được cài đặt theo mặc
định. Nó chỉ được phát triển với Python bằng bộ công cụ Tkinter GUI và cung cấp các
tính năng sau:
Hoạt động trên nhiều hệ điều hành như Windows, Unix và macOS
Cung cấp một cửa sổ shell để chạy các lệnh và hiển thị kết quả
Cung cấp trình soạn thảo văn bản trên nhiều cửa sổ với khả năng đánh dấu cú pháp
mã và hoàn thành mã tự động
Có trình gỡ lỗi riêng
Spyder
Spyder là một IDE nguồn mở được nhiều nhà khoa học và nhà phân tích dữ liệu sử dụng.
Nó cung cấp trải nghiệm phát triển toàn diện với các tính năng phân tích dữ liệu nâng
cao, trực quan hóa dữ liệu và gỡ lỗi. Spyder cũng bao gồm các tính năng sau:
Trình chỉnh sửa mã hỗ trợ nhiều ngôn ngữ
Bảng điều khiển IPython tương tác
Trình gỡ lỗi cơ bản
Thư viện khoa học như Matplotlib, SciPy và NumPy
Khả năng khám phá các biến trong mã
Khả năng xem tài liệu trong thời gian thực
Atom
Atom là một trình soạn thảo miễn phí do GitHub phát triển, hỗ trợ viết mã bằng nhiều
ngôn ngữ lập trình, bao gồm cả Python. Sử dụng Atom, các nhà phát triển có thể trực tiếp
12
Downloaded by B?p Tr??ng Thành (baptruongthanh@gmail.com)
lOMoARcPSD|50662567
làm việc với GitHub, trang web nơi bạn có thể lưu mã của mình một cách tập
trung. Atom cung cấp các tính năng sau:
Khả năng hoạt động trên nhiều hệ điều hành
Dễ dàng cài đặt hoặc tạo các gói mới
Hoàn thành mã tự động nhanh chóng hơn
Khả năng tìm kiếm tệp và dự án
Tùy chỉnh giao diện dễ dàng
1.3 Giới thiệu về pycharm
1.3.1. Pycharm là gì?
PyCharm là một nền tảng hybrid được JetBrains phát triển như một IDE cho Python. Nó
thường được sử dụng để phát triển ứng dụng Python. Một số tổ chức kỳ lân như Twitter,
Facebook, Amazon và Pinterest cũng sử dụng PyCharm làm IDE Python của họ. Chúng
ta có thể chạy PyCharm trên Windows, Linux hoặc Mac OS. Ngoài ra, nó chứa các
module và các package giúp các lập trình viên phát triển phần mềm bằng Python tiết
kiệm thời gian và công sức. Hơn nữa, nó cũng có thể được tùy chỉnh theo yêu cầu của các
nhà phát triển.
Giao diện của pycharm
13
Downloaded by B?p Tr??ng Thành (baptruongthanh@gmail.com)
lOMoARcPSD|50662567
1.3.2. Các tính năng của Pycharm
a .Trình sửa code thông minh
Giúp chúng ta viết mã chất lượng cao hơn
Nó bao gồm các lược đồ màu (color schemes) cho từ khóa, lớp và hàm. Điều này
giúp tăng khả năng đọc và hiểu mã.
Giúp xác định lỗi một cách dễ dàng.
Cung cấp tính năng tự động hoàn thành và hướng dẫn để hoàn thành mã.
b. Điều hướng mã
Nó giúp các nhà phát triển chỉnh sửa và cải thiện mã với ít nỗ lực và thời gian hơn.
Với điều hướng mã, lập trình viên có thể dễ dàng điều hướng đến một hàm, lớp
hoặc tệp.
Một lập trình viên có thể xác định vị trí một phần tử, một ký hiệu hoặc một biến
trong mã nguồn trong thời gian ngắn.
Hơn nữa, bằng cách sử dụng chế độ thấu kính, nhà phát triển có thể kiểm tra và vá
lỗi toàn bộ mã nguồn một cách kỹ lưỡng.
c. Tái cấu trúc
Nó có lợi thế là thực hiện các thay đổi hiệu quả và nhanh chóng đối với cả biến
cục bộ (local variables) và biến toàn cục (global variables).
Tái cấu trúc trong PyCharm cho phép các nhà phát triển cải thiện cấu trúc bên
trong mà không thay đổi hiệu suất bên ngoài của code.
Pycharm cũng giúp phân chia các lớp và chức năng mở rộng tốt hơn với sự trợ
giúp của phương pháp trích xuất.
d. Hỗ trợ cho nhiều công nghệ web khác
Nó giúp các nhà phát triển tạo các ứng dụng web bằng Python.
Nó hỗ trợ các công nghệ web phổ biến như HTML, CSS và JavaScript.
Các nhà phát triển có lựa chọn chỉnh sửa trực tuyến với IDE này. Đồng thời, họ có
thể xem trước trang web đã cập nhật/đã tạo.
Các nhà phát triển có thể theo dõi các thay đổi trên trình duyệt web trực tiếp.
PyCharm cũng hỗ trợ AngularJS và NodeJS để phát triển các ứng dụng web.
e. Hỗ trợ cho các web framework Python phổ biến
PyCharm hỗ trợ các web framework như Django.
Cung cấp tính năng tự động điền và gợi ý cho các thông số của Django.
14
Downloaded by B?p Tr??ng Thành (baptruongthanh@gmail.com)
lOMoARcPSD|50662567
Giúp vá lỗi các code của Django.
Hỗ trợ các web framework thông dụng như web2py và Pyramid
f. Hỗ trợ cho Thư viện Khoa học Python
PyCharm hỗ trợ các thư viện khoa học của Python như Matplotlib, NumPy và
Anaconda.
Các thư viện khoa học này giúp xây dựng các dự án về Khoa học Dữ liệu và Học
máy.
Hỗ trợ các biểu đồ tương tác giúp các nhà phát triển hiểu dữ liệu tốt hơn.
Nó có khả năng tích hợp với những công cụ khác nhau như IPython, Django và
Pytest. Sự tích hợp này giúp thúc đẩy các giải pháp độc đáo.
Ưu điểm và nhược điểm của việc sử dụng PyCharm
PyCharm là một IDE tuyệt vời cho các lập trình viên và nhà phát triển ứng dụng
Python. Tuy nhiên, có một số ưu và nhược điểm của việc sử dụng PyCharm. Hãy cùng
tìm hiểu:
- Ưu điểm
Cài đặt PyCharm rất dễ dàng.
15
Downloaded by B?p Tr??ng Thành (baptruongthanh@gmail.com)
lOMoARcPSD|50662567
PyCharm là một IDE dễ sử dụng.
Có rất nhiều plugin hữu ích và phím tắt hữu ích trong PyCharm.
PyCharm tích hợp các tính năng của thư viện và IDE như tự động hoàn thành và tô
màu.
Nó cho phép xem mã nguồn trong một cú nhấp chuột.
Tiết kiệm thời gian phát triển phần mềm
Tính năng đánh dấu lỗi trong code giúp nâng cao hơn nữa quá trình phát triển.
Cộng đồng các nhà phát triển Python vô cùng lớn và chúng ta có thể giải quyết các
thắc mắc/ nghi ngờ của mình một cách dễ dàng.
- Nhược điểm
PyCharm không miễn phí và phiên bản Professional của nó khá đắt.
Tính năng tự điền (auto-complete) sẽ không tốt cho các lập trình viên newbie
Nó có thể gây ra sự cố trong khi sửa chữa các công cụ như venv.
2.1. Hướng dẫn cài đặt và sử dụng Python+Pycharm trên linux
2.1.1. Tìm hiểu về hệ điều hành Linux
a. Khái niệm
Linux là một hệ điều hành máy tính được phát triển từ năm 1991 dựa trên hệ điều hành
Unix và bằng viết bằng ngôn ngữ C.
16
Downloaded by B?p Tr??ng Thành (baptruongthanh@gmail.com)
lOMoARcPSD|50662567
Do Linux được phát hành miễn phí và có nhiều ưu điểm vượt trội nên Linux vẫn giữ
được một chỗ đứng vững chắc trong lòng người dùng trước các ông lớn như Windows
hay macOS.
b. Cấu trúc hệ điều hành linux
+ Kernel
Hay được gọi là phần Nhân vì đây là phần quan trọng nhất trong máy tính bởi chứa đựng
các module hay các thư viện để quản lý, giao tiếp giữa phần cứng máy tính và các ứng
dụng.
+ Shell
Shell là phần có chức năng thực thi các lệnh (command) từ người dùng hoặc từ các ứng
dụng yêu cầu, chuyển đến cho Kernel xử lý. Shell chính là cầu nối để kết nối Kernel và
Application, phiên dịch các lệnh từ Application gửi đến Kernel để thực thi.
Có các loại Shell như sau: sh (the Bourne Shell), bash(Bourne-again shell), csh (C shell),
ash (Almquist shell), tsh (TENEX C shell), zsh (Z shell).
+ Application
Đây là phần quen thuộc với chúng ta nhất, phần để người dùng cài đặt ứng dụng, chạy
ứng dụng để người dùng có thể phục vụ cho nhu cầu của mình.
17
Downloaded by B?p Tr??ng Thành (baptruongthanh@gmail.com)
lOMoARcPSD|50662567
c. Công dụng của hệ điều hành Linux
Tương tự như các hệ điều hành khác, Linux cũng cấp môi trường trung gian để người
dùng có thể giao tiếp với phần cứng máy tính, thực hiện các công việc của mình.
Bên cạnh đó, nhờ ứng dụng mã nguồn mở mà Linux đem lại nhiều sự thoải mái hơn cho
người dùng, đặc biệt các lập trình viên, nhà phát triển.
2. Ưu, nhược điểm của hệ điều hành Linux
- Ưu điểm
+ Miễn phí và được hỗ trợ các ứng dụng văn phòng OpenOffice và LibreOffice.
+ Tính bảo mật cao, an toàn cho người dùng.
+ Tính linh hoạt, người dùng có thể chỉnh sửa hệ điều hành để phù hợp với nhu cầu sử
dụng của mình.
+ Không lo sợ giật, lag, không chạy nổi,…trên các máy tính có cấu hình không cao.
18
Downloaded by B?p Tr??ng Thành (baptruongthanh@gmail.com)
lOMoARcPSD|50662567
- Nhược điểm
+ Các nhà phát triển phần mềm vẫn chưa để tâm đến hệ điều hành tiềm năng này nên số
lượng phần mềm được hỗ trợ vẫn còn hạn chế.
+ Một số nhà sản xuất không phát triển driver hỗ trợ nền tảng Linux.
d. So sánh hệ điều hành Windows và Linux
Linux Windows
Cấu trúc file Cây dữ liệu Thư mục
Registry Không có Registry, ứng dụng trên
Linux lưu giữa thiết bị nội tại
trong bản thân trên cơ sở phân cấp
người dùng
được xem là bộ khung của máy
tính, nó lưu trữ toàn bộ thông tin
ứng dụng, thiết đặt chức năng,
mật khẩu người dùng, thông tin
thiết bị
Cài đặt ứng dụng Cài đặt chương trình theo trình
quản lý, một ứng dụng được liên
kết đến nhiều thư viện và tệp tin
rời rạc
Cài đặt ứng dụng theo gói cài
đặt.exe
Mã nguồn Mở Đóng
Giao diện Có thể có nhiều sắc thái chức
năng khác nhau
Không thể thay đổi giao diện
điều khiển
19
Downloaded by B?p Tr??ng Thành (baptruongthanh@gmail.com)
lOMoARcPSD|50662567

Preview text:

lOMoARcPSD|50662567
BÁO-CÁO- Chuyên-ĐỀ- Python.word-1-1-2
Cong nghe thong tin (Đại học Điện lực) Scan to open on Studocu
Studocu is not sponsored or endorsed by any college or university
Downloaded by B?p Tr??ng Thành (baptruongthanh@gmail.com) lOMoARcPSD|50662567
TRƯỜNG ĐẠI HỌC ĐIỆN LỰC
KHOA CÔNG NGHỆ THÔNG TIN
BÁO CÁO CHUYÊN ĐỀ KẾT THÚC HỌC PHẦN PYTHON
ĐỀ TÀI: BIỂU THỨC VÀ SỐ HỌC TRONG TRONG
PYTHON (EXPRESSSIONS AND ARITHMETIC IN PYTHON)

Giảng viên hướng dẫn : Trần Thị Minh Thu
Sinh viên thực hiện : Nguyễn Xuân Thành -22810310360
Nguyễn Đình Hoàn - 228103103 Lớp : D17CNPM5
Ngành : Công nghệ thông tin
Chuyên ngành : Công nghệ phần mềm Khóa : 2022-2027 1
Downloaded by B?p Tr??ng Thành (baptruongthanh@gmail.com) lOMoARcPSD|50662567
Hà Nội, tháng 12 năm 2023 MỤC LỤC
LỜI CẢM ƠN……………………………………………………………………………4
LỜI MỞ ĐẦU……………………………………………………………………………5
CHƯƠNG 1: HƯỚNG DẪN CÀI ĐẶT VÀ SỬ DỤNG PYTHON + PYCHARM TRÊN
LINUX…………………………………………………………………………………….6
1.1.Giới thiệu về Python……………………………………………………………...6
1.1.1. Sơ lược về lịch sử phát triển ngôn ngữ lập trình Python……………………6
1.1.2. Khái niệm về Python………………………………………………………...6
1.1.3. Tính năng chính của Python…………………………………………………7
1.1.4. Ứng dụng của Python………………………………………………………...8
1.1.5. Lợi thế của việc học Python………………………………………………….9
1.1.6. Lý do nên học ngôn ngữ lập trình Python…………………………………..10
1.2. Môi trường lập trình Python……………………………………………………11
1.2.1. Python IDE là gì?...........................................................................................11
1.3. Giới thiệu về Pycharm………………………………………………………….13
1.3.1.Pycharm là gì?.................................................................................................13
1.3.2. Các tính năng của Pycharm…………………………………………………14
2.1. Hướng dẫn cài đặt và sử dụng Python+Pycharm trên linux……………………16
2.1.1. Tìm hiểu về hệ điều hành Linux……………………………………………16
2.1.2. Cách để cài đặt Ubuntu Linux……………………………………………...25
CHƯƠNG 2: BIỂU THỨC VÀ SỐ HỌC TRONG PYTHON (EXPRESSIONS AND
ARITHMETIC IN PYTHON)…………………………………………………………...36
3.1. Biểu thức (Expressions)………………………………………………………...36
3.2. Biểu thức loại hỗn hợp………………………………………………………….39 2
Downloaded by B?p Tr??ng Thành (baptruongthanh@gmail.com) lOMoARcPSD|50662567
3.3. Độ ưu tiên của các toán tử và tính kết hợp……………………………………..39
3.4. Định dạng biểu thức…………………………………………………………..40
3.5. Bình luận………………………………………………………………………41
3.6. Lỗi……………………………………………………………………………..41
3.6.1. Lỗi cú pháp…………………………………………………………………41
3.6.2. Ngoại lệ trong thời gian chạy………………………………………………42
3.6.3. Lỗi logic……………………………………………………………………43
3.7. Số học (Arithmatic)…………………………………………………………….44
3.8. Thêm các toán tử số học………………………………………………………..46
3.9. Thuật toán………………………………………………………………………47
KẾT LUẬN……………………………………………………………………………..50
TÀI LIỆU THAM KHẢO……………………………………………………………….51 3
Downloaded by B?p Tr??ng Thành (baptruongthanh@gmail.com) lOMoARcPSD|50662567 Lời cảm ơn
Trên thực tế,không có sự thành công nào mà không gắn liền với những sự hỗ trợ, sự giúp
đỡ dù ít hay nhiều, dù là trực tiếp hay là gián tiếp của người khác trợ, sự giúp đỡ dù ít hay
nhiều, dù là trực tiếp hay gián tiếp của người khác. Trong suốt thười gian từ khi bắt đầu
học tập ở giảng đường Đại học đã đến nay, chúng em đã nhận được rất nhiều sự quan
tâm, giúp đỡ của thầy cô, gia đình và bạn bè.
Với lòng biết ơn sâu sắc nhất, chúng em xin gửi đến thầy cô ở Khoa Công Nghệ Thông
Tin trường Đại Học Điện Lực đã cùng với trí thức và tâm huyết của mình để truyền đạt
vốn kiến thức quý báu cho chúng em trong suốt thời gian học tập tại trường. Và đặc biệt,
trong kỷ này, em được tiếp cận với môn học rất lưu ích đối với sinh viên ngành Công
Nghệ Thông Tin. Đó là môn “Ngôn ngữ lập trình Python”
Em xin chân thành cảm ơn cô Trần Thị Minh Thu đã tận tâm hưởng dân chúng em qua
từng buổi học trên lớp cũng như những buổi nói chuyện, thào luận về môn học. Trong
thời gian được học tập và thực hành dưới sự hướng dẫn của cô, em không những thu
được rất nhiều kiến thức bổ ích, mà còn được truyền sự say mê và thích thú đối với bộ
môn "Kiểm thử và đảm bảo chất lượng phần mềm. Nếu không có những lời hướng dẫn,
dạy bảo của thấy thì nhóm em nghĩ báo cáo này rất khó có thể hoàn thành được.
Xin gửi lời cảm ơn chân thành đến gia đình, bạn bè là nguồn động viên to lớn, giúp em
vượt qua những khó khăn trong quá trình học tập và thực hiện báo cáo.
Mặc dù đã rất cố gắng hoàn thiện báo cáo với tất cả sự nỗ lực. Tuy nhiên, do
bước đầu đi vào thực tế, tìm hiểu và xây dựng báo cáo trong thời gian có hạn, và
kiến thức còn hạn chế, nhiều bỡ ngỡ, nên báo cáo " Biểu thức và số học trong Python
(Expressions and Arithmetic in python) chắc chắn sẽ không thể tránh khỏi những thiếu
sót. Em rất mong nhận được sự quan tâm, thông cảm và những đóng góp quý báu của
các thầy cô để báo cáo này được hoàn thiện hơn. Một lần nữa, em xin chân thành cảm
ơn và luôn mong nhận được sự đóng góp của mọi người. Trân trọng. 4
Downloaded by B?p Tr??ng Thành (baptruongthanh@gmail.com) lOMoARcPSD|50662567 Lời mở đầu
Ngày nay, với sức mạnh công nghệ hiện đại nhanh chóng giúp con người thoát
khỏi những khó khăn trong công việc, cuộc sống tấp nập và hối hả ta cần phải nhanh
chóng gia nhập vào thế giới, chủ động hội nhập.
Với sự phát triển nhanh chóng đó rất có nhiều công cụ hữu ích giúp chúng ta tiết
kiệm rất nhiều thời gian và chi phí. Nhiều phần mềm trong lĩnh vực công nghệ thông tin
nhanh chóng ra đời đã góp phần đáng kể.
“Công Nghệ Thông Tin” một lĩnh vực đầy tiềm năng đã đem lại cho con người
những ứng dụng thật tiện lợi và hữu ích. Một trong những ứng dụng thiết thực mà nó đem
lại là việc ứng dụng tin học vào nhiều lĩnh vực của đời sống như trong các trường học,
công ty, cơ quan, xí nghiệp, bệnh viện... phần lớn đều ứng dụng tin học để giúp cho việc
quản lý được dễ dàng và thuận tiện hơn. Trong khi đó, AI đang từng bước được mở rộng
và phát triển, nó có thể thay thế một số ngành nghề và cuộc sống của con người. Và ngôn
ngữ lập trình Python đã góp phần to lớn trong việc phát triển AI các lập trình viên thường
lựa chọn Python cho dự án về Machine Learning và AI. Lí do là bởi Python được hỗ trợ
bởi các thư viện như Scikit-learn và TensorFlow, giúp đơn giản hóa quá trình triển khai
các thuật toán Machine Learning. Đồng thời, Python còn sở hữu nhiều thư viện chuyên
biệt, giúp lập trình viên thực hiện mọi tác vụ Machine Learning từ những đơn giản đến
những phức tạp,thông qua các thuật toán logic. Vì thế mà nhóm em chọn đề tài ” Biểu
thức và số học trong Python (Expressions and Arithmetic in python) “ làm đề tài nghiên cứu của mình. 5
Downloaded by B?p Tr??ng Thành (baptruongthanh@gmail.com) lOMoARcPSD|50662567
CHƯƠNG 1. HƯỚNG DẪN CÀI ĐẶT VÀ SỬ DỤNG PYTHON + PYCHARM TRÊN LINUX
1.1. Giới thiệu về python
1.1.1. Sơ lược về lịch sử phát triển ngôn ngữ lập trình Python. 
Python được phát triển vào cuối những năm 1980 bởi Guido van Rossum tại Viện
Nghiên cứu Quốc gia về Toán học và Khoa học Máy tính ở Hà Lan với tư cách là
người kế thừa ngôn ngữ ABC có khả năng xử lý và giao tiếp ngoại lệ. 
Python có nguồn gốc từ các ngôn ngữ lập trình như ABC, Modula 3, small talk, Algol-68. 
Van Rossum đã chọn tên Python cho ngôn ngữ mới từ một chương trình truyền
hình, Monty Python’s Flying Circus. 
Trang Python là một tệp có phần mở rộng .py chứa có thể là sự kết hợp của Thẻ HTML và tập lệnh Python. 
Vào tháng 12 năm 1989, người sáng tạo đã phát triển trình thông dịch python đầu
tiên như một sở thích, và sau đó vào ngày 16 tháng 10 năm 2000, Python 2.0 được
phát hành với nhiều tính năng mới. 
Vào ngày 3 tháng 12 năm 2008, Python 3.0 được phát hành với nhiều thử nghiệm
hơn và bao gồm các tính năng mới. 
Python là một ngôn ngữ kịch bản mã nguồn mở. 
Python là mã nguồn mở, có nghĩa là bất kỳ ai cũng có thể tải xuống miễn phí từ
trang chủ và sử dụng nó để phát triển các chương trình. Mã nguồn của nó có thể
được truy cập và sửa đổi theo yêu cầu trong dự án. 
Python là một trong những ngôn ngữ chính thức tại Google.
1.1.2. Khái niệm về Python
Đầu tiên, Python là gì? Python là ngôn ngữ lập trình máy tính bậc cao thường được sử
dụng để xây dựng trang web và phần mềm, tự động hóa các tác vụ và tiến hành phân tích
dữ liệu. Python là ngôn ngữ có mục đích chung, nghĩa là nó có thể được sử dụng để tạo
nhiều chương trình khác nhau và không chuyên biệt cho bất kỳ vấn đề cụ thể nào. 6
Downloaded by B?p Tr??ng Thành (baptruongthanh@gmail.com) lOMoARcPSD|50662567
Tính linh hoạt này, cùng với sự thân thiện với người mới bắt đầu, đã khiến nó trở thành
một trong những ngôn ngữ lập trình được sử dụng nhiều nhất hiện nay. Một cuộc khảo
sát được thực hiện bởi công ty phân tích ngành RedMonk cho thấy rằng đây là ngôn ngữ
lập trình phổ biến thứ hai đối với các nhà phát triển vào năm 2021.
1.1.3. Tính năng chính của Python
Ngôn ngữ lập trình đơn giản, dễ học: Python có cú pháp rất đơn giản, rõ ràng. Nó dễ đọc
và viết hơn rất nhiều khi so sánh với những ngôn ngữ lập trình khác như C++, Java, C#.
Python làm cho việc lập trình trở nên thú vị, cho phép bạn tập trung vào những giải pháp chứ không phải cú pháp.
- Miễn phí, mã nguồn mở: Bạn có thể tự do sử dụng và phân phối Python, thậm chí
là dùng cho mục đích thương mại. Vì là mã nguồn mở, bạn không những có thể sử
dụng các phần mềm, chương trình được viết trong Python mà còn có thể thay đổi
mã nguồn của nó. Python có một cộng đồng rộng lớn, không ngừng cải thiện nó mỗi lần cập nhật.
- Khả năng di chuyển: Các chương trình Python có thể di chuyển từ nền tảng này
sang nền tảng khác và chạy nó mà không có bất kỳ thay đổi nào. Nó chạy liền mạch
trên hầu hết tất cả các nền tảng như Windows, macOS, Linux.
- Khả năng mở rộng và có thể nhúng: Giả sử một ứng dụng đòi hỏi sự phức tạp rất
lớn, bạn có thể dễ dàng kết hợp các phần code bằng C, C++ và những ngôn ngữ
khác (có thể gọi được từ C) vào code Python. Điều này sẽ cung cấp cho ứng dụng
của bạn những tính năng tốt hơn cũng như khả năng scripting mà những ngôn ngữ
lập trình khác khó có thể làm được.
- Ngôn ngữ thông dịch cấp cao: Không giống như C/C++, với Python, bạn không
phải lo lắng những nhiệm vụ khó khăn như quản lý bộ nhớ, dọn dẹp những dữ liệu
vô nghĩa,... Khi chạy code Python, nó sẽ tự động chuyển đổi code sang ngôn ngữ
máy tính có thể hiểu. Bạn không cần lo lắng về bất kỳ hoạt động ở cấp thấp nào.
- Thư viện tiêu chuẩn lớn để giải quyết những tác vụ phổ biến: Python có một số
lượng lớn thư viện tiêu chuẩn giúp cho công việc lập trình của bạn trở nên dễ thở
hơn rất nhiều, đơn giản vì không phải tự viết tất cả code. Ví dụ: Bạn cần kết nối cơ
sở dữ liệu MySQL trên Web server? Bạn có thể nhập thư viện MySQLdb và sử
dụng nó. Những thư viện này được kiểm tra kỹ lưỡng và được sử dụng bởi hàng
trăm người. Vì vậy, bạn có thể chắc chắn rằng nó sẽ không làm hỏng code hay ứng dụng của mình.
- Hướng đối tượng: Mọi thứ trong Python đều là hướng đối tượng. Lập trình hướng
đối tượng (OOP) giúp giải quyết những vấn đề phức tạp một cách trực quan. Với
OOP, bạn có thể phân chia những vấn đề phức tạp thành những tập nhỏ hơn bằng
cách tạo ra các đối tượng. 7
Downloaded by B?p Tr??ng Thành (baptruongthanh@gmail.com) lOMoARcPSD|50662567
1.1.4. Ứng dụng của Python
Python thường được sử dụng để phát triển trang web và phần mềm, tự động hóa tác vụ,
phân tích dữ liệu và trực quan hóa dữ liệu. Vì tương đối dễ học, Python đã được nhiều
người không phải là lập trình viên như kế toán và nhà khoa học áp dụng cho nhiều công
việc hàng ngày, chẳng hạn như tổ chức tài chính.
Phân tích dữ liệu và học máy
Python đã trở thành một yếu tố chính trong khoa học dữ liệu, cho phép các nhà phân tích
dữ liệu và các chuyên gia khác sử dụng ngôn ngữ này để thực hiện các phép tính thống kê
phức tạp, tạo trực quan hóa dữ liệu, xây dựng thuật toán học máy, thao tác và phân tích
dữ liệu cũng như hoàn thành các nhiệm vụ khác liên quan đến dữ liệu.
Python có thể xây dựng nhiều dạng trực quan hóa dữ liệu khác nhau, chẳng hạn như biểu
đồ đường và thanh, biểu đồ hình tròn, biểu đồ 3D. Python cũng có một số thư viện cho
phép các lập trình viên viết chương trình để phân tích dữ liệu và học máy nhanh hơn và
hiệu quả hơn, như TensorFlow và Keras. Phát triển web
Python thường được sử dụng để phát triển back-end của trang web hoặc ứng dụng-những
phần mà người dùng không nhìn thấy. Vai trò của Python trong phát triển web có thể bao
gồm gửi dữ liệu đến và đi từ máy chủ, xử lý dữ liệu và giao tiếp với cơ sở dữ liệu, định
tuyến URL và đảm bảo tính bảo mật. Python cung cấp một số khuôn khổ để phát triển
web. Những cái thường được sử dụng bao gồm Django và Flask.
Một số công việc phát triển web sử dụng Python bao gồm kỹ sư phụ trợ, nhà phát triển
Python, kỹ sư phần mềm và kỹ sư DevOps.
Tự động hoá và phát triển phần mềm
Nếu bạn thấy mình thực hiện một nhiệm vụ lặp đi lặp lại, bạn có thể làm việc hiệu quả
hơn bằng cách tự động hóa nó bằng Python. Quá trình viết code được sử dụng để xây
dựng các quy trình tự động này được gọi là viết script. Trong thế giới mã hóa, tự động
hóa có thể được sử dụng để kiểm tra lỗi trên nhiều tệp, chuyển đổi tệp, thực hiện phép
toán đơn giản và loại bỏ các bản sao trong dữ liệu. 8
Downloaded by B?p Tr??ng Thành (baptruongthanh@gmail.com) lOMoARcPSD|50662567 Phát triển phần mềm
Python thậm chí có thể được sử dụng bởi những người mới bắt đầu để tự động hóa các
tác vụ đơn giản trên máy tính—chẳng hạn như đổi tên tệp, tìm và tải xuống nội dung trực
tuyến hoặc gửi email hoặc văn bản theo khoảng thời gian mong muốn. Trong phát triển
phần mềm, Python có thể hỗ trợ các tác vụ như kiểm soát bản dựng, theo dõi lỗi và thử
nghiệm. Với Python, các nhà phát triển phần mềm có thể tự động kiểm tra các sản phẩm
hoặc tính năng mới. Một số công cụ Python được sử dụng để kiểm thử phần mềm bao gồm Green và Requestium.
1.1.5. Lợi thế của việc học Python
Python là một ngôn ngữ dễ đọc và đơn giản để hiểu cho các nhà phát triển chưa bao giờ
viết code. Do đó, cộng đồng người dùng Python không ngừng phát triển và lớn mạnh. Có
rất nhiều học giả và giáo sư trong cộng đồng người dùng Python. Vì vậy, khi xảy ra sự
cố, nhà phát triển có thể tập trung vào vấn đề đó và nhận trợ giúp từ những người khác
trong cộng đồng mà không phải lo lắng về sự phức tạp của ngôn ngữ.
Python là một ngôn ngữ lập trình miễn phí và mở. Giấy phép nguồn mở được OSI phê
chuẩn mà Python được phát triển theo đó làm cho Python trở thành ngôn ngữ tự do sử
dụng và phân phối, kể cả cho mục đích thương mại. Nó sẽ làm giảm chi phí của bạn để
bảo trì. Trong khi các nhà phát triển có thể chia sẻ, sao chép và thay đổi nó. Đối với cộng
đồng Python, đây là cơ hội để chia sẻ kiến thức với các chuyên gia cấp dưới. 9
Downloaded by B?p Tr??ng Thành (baptruongthanh@gmail.com) lOMoARcPSD|50662567 Python vô cùng dễ học
Các lập trình viên nói rằng Python rất dễ sử dụng. Mặc dù khi xây dựng các ứng dụng
hoặc trò chơi dành cho thiết bị di động, C++ hoặc bất kỳ ngôn ngữ kịch bản điển hình
nào khác có thể dễ sử dụng hơn, nhưng Python sẽ tốt hơn để vì nó dễ dàng xây dựng các
ứng dụng phía máy chủ, tự động hóa hệ thống xây dựng và thu thập dữ liệu thử nghiệm.
Python có nhiều lựa chọn thư viện và framework, đây là một trong những lợi thế lớn nhất
của Python. Từ NumPy đến TensorFlow, thư viện Python được sử dụng cho mọi thứ từ
trực quan hóa dữ liệu, học máy, khoa học dữ liệu, xử lý ngôn ngữ tự nhiên và phân tích dữ liệu phức tạp.
Nó sở hữu một thư viện lớn với khả năng quản lý bộ nhớ và thiết kế trống giúp tăng năng
suất của nhà phát triển Python. Nhờ đó, các nhà phát triển có thể quản lý cơ sở dữ liệu, tài
liệu, trình duyệt web; thực hiện kiểm tra đơn vị và nhiều chức năng khác. Ngoài ra,
Python có thể được sử dụng để phát triển nhiều tác vụ, chẳng hạn như phát triển ứng
dụng web và máy tính để bàn, phát triển các hệ thống tính toán phức tạp, hệ thống quản
lý hỗ trợ cuộc sống, Internet of Things (IoT), trò chơi, v.v.
1.1.6. Lý do nên học ngôn ngữ lập trình Python
Với những tính năng kể trên, Python mang nhiều ưu điểm để những người mới bắt đầu
học ngôn ngữ lập trình nên lựa chọn: 
Là ngôn ngữ lập trình phổ biến nhất:
Python được coi là ngôn ngữ lập trình phổ biến hiện nay. Được xuất hiện vào đầu năm
199, trải qua sự phát triển và trưởng thành, Python đã trở thành ngôn ngữ lập trình cực kỳ
thân thiện với người dùng. Hàng ngàn người đã sử dụng chúng trong kiểm thử vi mạch,
trong các ứng dụng điện thoại, xây dựng các video game... 
Rất nhiều "anh tài" sử dụng Python 10
Downloaded by B?p Tr??ng Thành (baptruongthanh@gmail.com) lOMoARcPSD|50662567
Có thể nói, hiếm có ngôn ngữ lập trình nào như Python được sử dụng bởi nhiều các tên
tuổi lớn như vậy. Cụ thể, các thương hiệu sử dụng Python trong quá trình phát triển và
thử nghiệm như: Uber, Google, Paypal, Facebook, Instagram, Netflix, Dropbox… 
Sử dụng linh hoạt trong nhiều mảng lập trình
Không chỉ nổi tiếng với mảng lập trình web, Python còn là ngôn ngữ được sử dụng rộng
rãi trong lập trình robot và các hệ thống nhúng. 
Là bước đệm để học thêm các ngôn ngữ lập trình khác
Python thân thiện với người dùng và hòa đồng với cả những ngôn ngữ lập trình khác.
Như bạn đã biết, Python là ngôn ngữ hướng đối tượng có ứng dụng đa dạng. Và nếu bạn
nắm rõ Python thì sẽ dễ dàng hơn khi học thêm các ngôn ngữ lập trình khác. 
Python được hỗ trợ rất tốt
Với sự phổ biến của mình nên Python sở hữu cộng đồng hỗ trợ trực tuyến cực tốt. Có rất
nhiều các trang web hỗ trợ người dùng Python cực tốt như: The Official Python Tutorial, Stack Overflow... 
Cơ hội nghề nghiệp rộng mở với mức lương cao
Nếu thành thạo Python thì các lập trình viên hoàn toàn có thể sở hữu những công việc
cực tốt với mức lương siêu khủng. Và nếu có vốn ngoại ngữ tốt thì việc làm việc tại nước
ngoài hay các công ty liên doanh, công ty nước ngoài là điều cực kỳ bình thường.  Python hoàn toàn miễn phí
Ngôn ngữ lập trình nào cũng miễn phí. Sự khác biệt giữa Python với các ngôn ngữ khác
chính là việc nó hoàn toàn tương thích với các phần mềm mã nguồn mở (Open Sourse và
GPL) vì Python cũng là mã nguồn mở.
Bài viết trên đây ITPlus đã tổng hợp những thông tin cơ bản về Python, hy vọng bạn đọc
có thể hiểu rõ hơn về ngôn ngữ lập trình phổ biến này.
1.2.Môi trường lập trình Python 1.2.1. Python IDE là gì?
Môi trường phát triển tích hợp (IDE) là phần mềm cung cấp cho các nhà phát triển công
cụ duy nhất họ cần để viết, chỉnh sửa, kiểm tra và gỡ lỗi mã. PyCharm
JetBrains, một công ty phát triển công cụ phần mềm tại Séc, đã tạo ra PyCharm. Nó có
một phiên bản cộng đồng miễn phí phù hợp với các ứng dụng Python nhỏ và một phiên
bản chuyên nghiệp trả phí dành cho việc xây dựng các ứng dụng Python quy mô lớn, với
đầy đủ những tính năng sau: 
Tự động hoàn thành và kiểm tra mã 
Xử lý lỗi và sửa lỗi nhanh chóng 
Làm sạch mã mà không thay đổi chức năng 
Hỗ trợ các khung ứng dụng web như Django và Flask 11
Downloaded by B?p Tr??ng Thành (baptruongthanh@gmail.com) lOMoARcPSD|50662567 
Hỗ trợ các ngôn ngữ lập trình khác, chẳng hạn như JavaScript, CoffeeScript, TypeScript, AngularJS và Node 
Các công cụ và thư viện khoa học như Matplotlib và NumPy 
Khả năng chạy, gỡ lỗi, kiểm thử và triển khai các ứng dụng trong máy ảo từ xa 
Trình gỡ lỗi để tìm lỗi trong mã, trình kiểm tra để xác định các vấn đề về hiệu suất
trong mã và trình chạy thử nghiệm để chạy các bài kiểm thử đơn vị 
Hỗ trợ cơ sở dữ liệu IDLE
Môi trường phát triển và học hỏi tích hợp (IDLE) là Python IDE được cài đặt theo mặc
định. Nó chỉ được phát triển với Python bằng bộ công cụ Tkinter GUI và cung cấp các tính năng sau: 
Hoạt động trên nhiều hệ điều hành như Windows, Unix và macOS 
Cung cấp một cửa sổ shell để chạy các lệnh và hiển thị kết quả 
Cung cấp trình soạn thảo văn bản trên nhiều cửa sổ với khả năng đánh dấu cú pháp
mã và hoàn thành mã tự động  Có trình gỡ lỗi riêng Spyder
Spyder là một IDE nguồn mở được nhiều nhà khoa học và nhà phân tích dữ liệu sử dụng.
Nó cung cấp trải nghiệm phát triển toàn diện với các tính năng phân tích dữ liệu nâng
cao, trực quan hóa dữ liệu và gỡ lỗi. Spyder cũng bao gồm các tính năng sau: 
Trình chỉnh sửa mã hỗ trợ nhiều ngôn ngữ 
Bảng điều khiển IPython tương tác  Trình gỡ lỗi cơ bản 
Thư viện khoa học như Matplotlib, SciPy và NumPy 
Khả năng khám phá các biến trong mã 
Khả năng xem tài liệu trong thời gian thực Atom
Atom là một trình soạn thảo miễn phí do GitHub phát triển, hỗ trợ viết mã bằng nhiều
ngôn ngữ lập trình, bao gồm cả Python. Sử dụng Atom, các nhà phát triển có thể trực tiếp 12
Downloaded by B?p Tr??ng Thành (baptruongthanh@gmail.com) lOMoARcPSD|50662567
làm việc với GitHub, trang web nơi bạn có thể lưu mã của mình một cách tập
trung. Atom cung cấp các tính năng sau: 
Khả năng hoạt động trên nhiều hệ điều hành 
Dễ dàng cài đặt hoặc tạo các gói mới 
Hoàn thành mã tự động nhanh chóng hơn 
Khả năng tìm kiếm tệp và dự án 
Tùy chỉnh giao diện dễ dàng
1.3 Giới thiệu về pycharm 1.3.1. Pycharm là gì?
PyCharm là một nền tảng hybrid được JetBrains phát triển như một IDE cho Python. Nó
thường được sử dụng để phát triển ứng dụng Python. Một số tổ chức kỳ lân như Twitter,
Facebook, Amazon và Pinterest cũng sử dụng PyCharm làm IDE Python của họ. Chúng
ta có thể chạy PyCharm trên Windows, Linux hoặc Mac OS. Ngoài ra, nó chứa các
module và các package giúp các lập trình viên phát triển phần mềm bằng Python tiết
kiệm thời gian và công sức. Hơn nữa, nó cũng có thể được tùy chỉnh theo yêu cầu của các nhà phát triển. Giao diện của pycharm 13
Downloaded by B?p Tr??ng Thành (baptruongthanh@gmail.com) lOMoARcPSD|50662567
1.3.2. Các tính năng của Pycharm
a .Trình sửa code thông minh 
Giúp chúng ta viết mã chất lượng cao hơn 
Nó bao gồm các lược đồ màu (color schemes) cho từ khóa, lớp và hàm. Điều này
giúp tăng khả năng đọc và hiểu mã. 
Giúp xác định lỗi một cách dễ dàng. 
Cung cấp tính năng tự động hoàn thành và hướng dẫn để hoàn thành mã. b. Điều hướng mã 
Nó giúp các nhà phát triển chỉnh sửa và cải thiện mã với ít nỗ lực và thời gian hơn. 
Với điều hướng mã, lập trình viên có thể dễ dàng điều hướng đến một hàm, lớp hoặc tệp. 
Một lập trình viên có thể xác định vị trí một phần tử, một ký hiệu hoặc một biến
trong mã nguồn trong thời gian ngắn. 
Hơn nữa, bằng cách sử dụng chế độ thấu kính, nhà phát triển có thể kiểm tra và vá
lỗi toàn bộ mã nguồn một cách kỹ lưỡng. c. Tái cấu trúc 
Nó có lợi thế là thực hiện các thay đổi hiệu quả và nhanh chóng đối với cả biến
cục bộ (local variables) và biến toàn cục (global variables). 
Tái cấu trúc trong PyCharm cho phép các nhà phát triển cải thiện cấu trúc bên
trong mà không thay đổi hiệu suất bên ngoài của code. 
Pycharm cũng giúp phân chia các lớp và chức năng mở rộng tốt hơn với sự trợ
giúp của phương pháp trích xuất.
d. Hỗ trợ cho nhiều công nghệ web khác 
Nó giúp các nhà phát triển tạo các ứng dụng web bằng Python. 
Nó hỗ trợ các công nghệ web phổ biến như HTML, CSS và JavaScript. 
Các nhà phát triển có lựa chọn chỉnh sửa trực tuyến với IDE này. Đồng thời, họ có
thể xem trước trang web đã cập nhật/đã tạo. 
Các nhà phát triển có thể theo dõi các thay đổi trên trình duyệt web trực tiếp. 
PyCharm cũng hỗ trợ AngularJS và NodeJS để phát triển các ứng dụng web.
e. Hỗ trợ cho các web framework Python phổ biến 
PyCharm hỗ trợ các web framework như Django. 
Cung cấp tính năng tự động điền và gợi ý cho các thông số của Django. 14
Downloaded by B?p Tr??ng Thành (baptruongthanh@gmail.com) lOMoARcPSD|50662567 
Giúp vá lỗi các code của Django. 
Hỗ trợ các web framework thông dụng như web2py và Pyramid
f. Hỗ trợ cho Thư viện Khoa học Python 
PyCharm hỗ trợ các thư viện khoa học của Python như Matplotlib, NumPy và Anaconda. 
Các thư viện khoa học này giúp xây dựng các dự án về Khoa học Dữ liệu và Học máy. 
Hỗ trợ các biểu đồ tương tác giúp các nhà phát triển hiểu dữ liệu tốt hơn. 
Nó có khả năng tích hợp với những công cụ khác nhau như IPython, Django và
Pytest. Sự tích hợp này giúp thúc đẩy các giải pháp độc đáo.
Ưu điểm và nhược điểm của việc sử dụng PyCharm
PyCharm là một IDE tuyệt vời cho các lập trình viên và nhà phát triển ứng dụng
Python. Tuy nhiên, có một số ưu và nhược điểm của việc sử dụng PyCharm. Hãy cùng tìm hiểu: - Ưu điểm 
Cài đặt PyCharm rất dễ dàng. 15
Downloaded by B?p Tr??ng Thành (baptruongthanh@gmail.com) lOMoARcPSD|50662567 
PyCharm là một IDE dễ sử dụng. 
Có rất nhiều plugin hữu ích và phím tắt hữu ích trong PyCharm. 
PyCharm tích hợp các tính năng của thư viện và IDE như tự động hoàn thành và tô màu. 
Nó cho phép xem mã nguồn trong một cú nhấp chuột. 
Tiết kiệm thời gian phát triển phần mềm 
Tính năng đánh dấu lỗi trong code giúp nâng cao hơn nữa quá trình phát triển. 
Cộng đồng các nhà phát triển Python vô cùng lớn và chúng ta có thể giải quyết các
thắc mắc/ nghi ngờ của mình một cách dễ dàng. - Nhược điểm
 PyCharm không miễn phí và phiên bản Professional của nó khá đắt.
 Tính năng tự điền (auto-complete) sẽ không tốt cho các lập trình viên newbie
 Nó có thể gây ra sự cố trong khi sửa chữa các công cụ như venv.
2.1. Hướng dẫn cài đặt và sử dụng Python+Pycharm trên linux
2.1.1. Tìm hiểu về hệ điều hành Linux a. Khái niệm
Linux là một hệ điều hành máy tính được phát triển từ năm 1991 dựa trên hệ điều hành
Unix và bằng viết bằng ngôn ngữ C. 16
Downloaded by B?p Tr??ng Thành (baptruongthanh@gmail.com) lOMoARcPSD|50662567
Do Linux được phát hành miễn phí và có nhiều ưu điểm vượt trội nên Linux vẫn giữ
được một chỗ đứng vững chắc trong lòng người dùng trước các ông lớn như Windows hay macOS.
b. Cấu trúc hệ điều hành linux + Kernel
Hay được gọi là phần Nhân vì đây là phần quan trọng nhất trong máy tính bởi chứa đựng
các module hay các thư viện để quản lý, giao tiếp giữa phần cứng máy tính và các ứng dụng. + Shell
Shell là phần có chức năng thực thi các lệnh (command) từ người dùng hoặc từ các ứng
dụng yêu cầu, chuyển đến cho Kernel xử lý. Shell chính là cầu nối để kết nối Kernel và
Application, phiên dịch các lệnh từ Application gửi đến Kernel để thực thi.
Có các loại Shell như sau: sh (the Bourne Shell), bash(Bourne-again shell), csh (C shell),
ash (Almquist shell), tsh (TENEX C shell), zsh (Z shell). + Application
Đây là phần quen thuộc với chúng ta nhất, phần để người dùng cài đặt ứng dụng, chạy
ứng dụng để người dùng có thể phục vụ cho nhu cầu của mình. 17
Downloaded by B?p Tr??ng Thành (baptruongthanh@gmail.com) lOMoARcPSD|50662567
c. Công dụng của hệ điều hành Linux
Tương tự như các hệ điều hành khác, Linux cũng cấp môi trường trung gian để người
dùng có thể giao tiếp với phần cứng máy tính, thực hiện các công việc của mình.
Bên cạnh đó, nhờ ứng dụng mã nguồn mở mà Linux đem lại nhiều sự thoải mái hơn cho
người dùng, đặc biệt các lập trình viên, nhà phát triển.
2. Ưu, nhược điểm của hệ điều hành Linux - Ưu điểm
+ Miễn phí và được hỗ trợ các ứng dụng văn phòng OpenOffice và LibreOffice.
+ Tính bảo mật cao, an toàn cho người dùng.
+ Tính linh hoạt, người dùng có thể chỉnh sửa hệ điều hành để phù hợp với nhu cầu sử dụng của mình.
+ Không lo sợ giật, lag, không chạy nổi,…trên các máy tính có cấu hình không cao. 18
Downloaded by B?p Tr??ng Thành (baptruongthanh@gmail.com) lOMoARcPSD|50662567 - Nhược điểm
+ Các nhà phát triển phần mềm vẫn chưa để tâm đến hệ điều hành tiềm năng này nên số
lượng phần mềm được hỗ trợ vẫn còn hạn chế.
+ Một số nhà sản xuất không phát triển driver hỗ trợ nền tảng Linux.
d. So sánh hệ điều hành Windows và Linux Linux Windows Cấu trúc file Cây dữ liệu Thư mục Registry
Không có Registry, ứng dụng trên được xem là bộ khung của máy
Linux lưu giữa thiết bị nội tại
tính, nó lưu trữ toàn bộ thông tin
trong bản thân trên cơ sở phân cấp ứng dụng, thiết đặt chức năng, người dùng
mật khẩu người dùng, thông tin thiết bị Cài đặt ứng dụng
Cài đặt chương trình theo trình
Cài đặt ứng dụng theo gói cài
quản lý, một ứng dụng được liên đặt.exe
kết đến nhiều thư viện và tệp tin rời rạc Mã nguồn Mở Đóng Giao diện
Có thể có nhiều sắc thái chức
Không thể thay đổi giao diện năng khác nhau điều khiển 19
Downloaded by B?p Tr??ng Thành (baptruongthanh@gmail.com)