You are on page 1of 29

PYTHON CĂN BẢN

PHẦN 1 – GIỚI THIỆU PYTHON

Nguyễn Minh Triết,


Đại học Sư Phạm Kỹ Thuật Tp.HCM
Tp.HCM, 08/2022
GIỚI THIỆU PYTHON

“PYTHON là ngôn ngữ lập trình mã nguồn


mở, miễn phí , dễ học, thư viện phong phú
và ứng dụng rộng rãi”

Lập trình Python căn bản 8/23/2022 2


GIỚI THIỆU PYTHON
“PYTHON là ngôn ngữ lập trình mã nguồn mở, miễn phí ,
dễ học, thư viện phong phú và ứng dụng rộng rãi”

Top Programming
Languages 2021 -
IEEE Spectrum

Năm đầu tiên Python đứng


số 1 bảng xếp hạng?
Lập trình Python căn bản 8/23/2022 3
GIỚI THIỆU PYTHON
“PYTHON là ngôn ngữ lập trình mã nguồn mở, miễn phí , dễ
học, thư viện phong phú và ứng dụng rộng rãi”

https://pypi.org/

394,246 projects
3,695,855 releases
6,542,529 files Hiện đang có bao nhiêu thư
viện trong pypi.org ngôn
614,902 users ngữ tiếng Việt?
Lập trình Python căn bản 8/23/2022 4
GIỚI THIỆU PYTHON
“PYTHON là ngôn ngữ lập trình mã nguồn mở, miễn phí , dễ
học, thư viện phong phú và ứng dụng rộng rãi”

Web and Internet Development


Scientific and Numeric
Education
Desktop GUIs
Software Development
Business Applications
Lập trình Python căn bản 8/23/2022 5
GIỚI THIỆU PYTHON
“PYTHON là ngôn ngữ lập trình mã nguồn mở, miễn phí , dễ
học, thư viện phong phú và ứng dụng rộng rãi”

https://www.investopedia.com/terms/e/erp.asp

Lập trình Python căn bản 8/23/2022 6


GIỚI THIỆU PYTHON

https://www.investopedia.com/terms/e/erp.asp
Lập trình Python căn bản 8/23/2022 7
CÀI ĐẶT PYTHON
1. Cài đặt Python vào máy tính
https://www.python.org/downloads/

Lập trình Python căn bản 8/23/2022 8


CÀI ĐẶT PYTHON
2. Cài đặt trình soạn thảo:
IDLE PyCharm PyScripter Spyder

Lập trình Python căn bản 8/23/2022 9


CÀI ĐẶT PYTHON

Lập trình Python căn bản 8/23/2022 10


CÀI ĐẶT PYTHON
Chạy thử Unit converter:
import tkinter as tk
from tkinter import END
my_w = tk.Tk()
my_w.geometry("600x200") # Size of the window
my_w.title("Unit converter") # Adding a title
font1=('Times',34,'normal') # font size

l1 = tk.Label(my_w, text='Meter', width=10,font=font1 ) # Label


l1.grid(row=0,column=0,padx=10,pady=10)

m1_var=tk.DoubleVar() # Double variable


m1 = tk.Entry(my_w,width=10,bg='yellow',font=font1,textvariable=m1_var)
m1.grid(row=0,column=1,padx=10)

l2 = tk.Label(my_w, text='Feet', width=10,font=font1 ) # Label


l2.grid(row=1,column=0,padx=10,pady=10)

f1_var=tk.DoubleVar()
f1 = tk.Entry(my_w,width=10,bg='yellow',font=font1,textvariable=f1_var)
f1.grid(row=1,column=1,padx=10)
# Layout is over #

def my_upd1(*args): # data entered as feet


m1_var.set(round(f1_var.get()*0.3048,2))

def my_upd2(*args): # data entered as meter


f1_var.set(round(m1_var.get()*3.2808,2))

m1.bind("<FocusOut>",my_upd2) # lost focus


f1.bind("<FocusOut>",my_upd1)

# Selection of all data on focus


m1.bind("<FocusIn>",lambda x: m1.select_range(0,tk.END))
f1.bind("<FocusIn>",lambda x: f1.select_range(0,tk.END))
my_w.mainloop() # Keep the window open

Lập trình Python căn bản 8/23/2022 11


CÀI ĐẶT PYTHON
Chạy thử Dino Run:
1. Mở CMD >> pip install pygame
2. Tải mã nguồn game: https://download-media.code-
projects.org/2020/01/DINO_GAME_IN_PYTHON_WITH_SOURCE_CODE.zip
(dự phòng: https://drive.google.com/file/d/15NZmQbYBs-
0eTjkLfUX4nr6f4qCoi70C/view?usp=sharing )

3. Chạy thử

Lập trình Python căn bản 8/23/2022 12


PYTHON CĂN BẢN
PHẦN 2 – NGÔN NGỮ PYTHON CĂN BẢN
2.1 – Biến, kiểu dữ liệu
và hàm xuất nhập cơ bản

Nguyễn Minh Triết,


Đại học Sư Phạm Kỹ Thuật Tp.HCM
Tp.HCM, 08/2022
2.1 – Biến, kiểu dữ liệu
Mở Interactive Shell và nhập thử các phép toán sau đây

Lập trình Python căn bản 8/23/2022 14


2.1 – Biến, kiểu dữ liệu
Mở Interactive Shell và nhập thử các phép toán sau đây
>>> 2 + 3 * 6
20
>>> (2 + 3) * 6
30
>>> 48565878 * 578453
28093077826734
>>> 2 ** 8
256
>>> 23 / 7
3.2857142857142856
>>> 23 // 7
3
>>> 23 % 7
2
>>> (5 - 1) * ((7 + 1) / (3 - 1))
16.0

Lập trình Python căn bản 8/23/2022 15


2.1 – Biến, kiểu dữ liệu
Phép toán so sánh
Phép toán Kết quả Ví dụ
not Trả về True khi False và ngược lại not x
Trả về True khi chỉ cần một trong
or x or y
hai (hoặc cả hai) có giá trị True
Trả về True khi cả hai có giá trị
and x and y
đều bằng True
< (bé hơn), ≤ (bé hơn hoặc bằng),
<, <=, ==, >,
= (bằng) > (lớn hơn) ≥ (lớn hơn
>=, !=
hoặc bằng), ≠ (khác)
Lập trình Python căn bản 8/23/2022 16
2.1 – Biến, kiểu dữ liệu
Thứ tự ưu tiên các phép toán:
+ Thực hiện các phép toán trong dấu ngoặc
trước
+ Phép toán không chứa ngoặc thì ưu tiên theo
thứ tự sau:
* (nhân), / (chia), // (chia lấy nguyên), % (chia
lấy dư), + (cộng), – (trừ)
Thư viện toán học mở rộng thêm các phép toán math
>>> import math

Lập trình Python căn bản 8/23/2022 17


2.1 – Biến, kiểu dữ liệu
Biến và kiểu dữ liệu

Ép kiểu: int(tên biến); float(tên biến); str(tên biến)


Kiểm tra kiểu: type(tên biến)

Lập trình Python căn bản 8/23/2022 18


2.1 – Biến, kiểu dữ liệu
Đặt tên biến Chỉ gồm ký tự chữ, số, và gạch dưới (_)
Không được bắt đầu bằng số.
Không được trùng keyworks

Lập trình Python căn bản 8/23/2022 19


2.1 – Biến, kiểu dữ liệu
Đặt tên biến Chỉ gồm ký tự chữ, số, và gạch dưới (_)
Không được bắt đầu bằng số.

Lập trình Python căn bản 8/23/2022 20


2.1 – Biến, kiểu dữ liệu
Gán giá trị cho biến: <tên biến> = <biểu thức>

Lập trình Python căn bản 8/23/2022 21


2.1 – Biến, kiểu dữ liệu
Gán giá trị cho biến: <tên biến> = <biểu thức>

Lập trình Python căn bản 8/23/2022 22


2.1 – Hàm xuất nhập cơ bản
Xuất nhập dữ liệu cơ bản: Hàm input() và print()
input(prompt=None, /)
Lệnh input chờ nhận một chuỗi đến khi nhấn Enter.
Nếu có một chuỗi phụ thêm vào, chuỗi sẽ được in ra màn
hình trước khi chờ nhận chuỗi
Kết hợp lệnh gán giá trị vào biến để lưu trữ giá trị nhận
vào

Lập trình Python căn bản 8/23/2022 23


2.1 – Hàm xuất nhập cơ bản
Xuất nhập dữ liệu cơ bản: Hàm input() và print()

Input luôn đọc vào


một string, muốn
đọc số phải ép kiểu
sang int hoặc float

Lập trình Python căn bản 8/23/2022 24


2.1 – Hàm xuất nhập cơ bản
Xuất nhập dữ liệu cơ bản: Hàm input() và print()
Lệnh print in ra màn hình một dãy kết quả (cách nhau dấu
phẩy), cách nhau bằng ký tự gán cho sep (mặc định là
khoảng cách) và kết thúc bằng kí tự gán cho end (mặc định
là xuống dòng)

Lập trình Python căn bản 8/23/2022 25


2.1 – Hàm xuất nhập cơ bản
Có 03 cách in giá trị biến nằm trong một chuỗi
Cách 1: Dùng lệnh định dạng in % Cách 2: Sử dụng lệnh .format()
>>>a=1.23456 >>>a=1.23456
>>>b=9.87654 >>>b=9.87654
>>>print('a=%.2f va b=%.2f' %(a,b)) >>>print('a={0} va b={1}'.format(a,b))
a=1.23 va b=9.88 a=1.23456 va b=9.87654
>>>print('a=%s va b=%s' %(a,b)) >>>print('a={0:1.2f} va b={1:1.2f}'.format(a,b))
a=1.23456 va b=9.87654 a=1.23 va b=9.88

Cách 3: Sử dụng f-string >>>print("{0}{0}{0}".format("hello "))

>>>a=1.23456; b=9.87654 hello hello hello

>>>print(f'a={a} va b={b}') >>> print("Hello {w}".format(w="world"))

a=1.23456 va b=9.87654 Hello world

Lập trình Python căn bản 8/23/2022 26


2.1 – Hàm xuất nhập cơ bản
Sử dụng IDE để biên soạn và chạy chương trình sau (đặt tên
file là hello.py)

Lập trình Python căn bản 8/23/2022 27


2.1 – Hàm xuất nhập cơ bản
Bài tập thực hành:
Bài tập 1: Yêu cầu nhập vào năm sinh, in ra màn hình tuổi
Bài tập 2: Yêu cầu nhập vào tuổi, in ra màn hình năm sinh
Bài tập 3: Yêu cầu nhập vào bán kính R, in ra chu vi và diện
tích hình tròn.
Bài tập 4: Yêu cầu nhập vào hệ số a và b trong phương trình
bậc 1: ax+b=0, in ra nghiệm của phương trình.
Bài tập 5: Yêu cầu nhập vào tỷ giá USD so với VND và số tiền
USD, in ra số VND theo tỷ giá.
Bài tập 6: Yêu cầu nhập vào tỷ giá USD so với VND và số tiền
VND, in ra số USD theo tỷ giá.

Lập trình Python căn bản 8/23/2022 28


2.1 – Hàm xuất nhập cơ bản
Bài tập thực hành:
Bài tập 7: Viết chương trình yêu cầu người dùng nhập tên
và tuổi của họ. In ra màn hình năm họ được 80 tuổi. Ví dụ
người dùng nhập tên là An và 19 tuổi thì màn hình in ra “An
sẽ 80 tuổi vào năm 2083” (năm hiện tại là 2022)
Bài tập 8: Viết chương trình yêu cầu người dùng nhập tên
và ngày sinh của họ. In ra số ngày đếm ngược tới sinh nhật
của họ. Ví dụ người dùng nhập tên là An và ngày sinh
20/08/2022 (và ngày đang làm bài tập này là 14/08/2022)
thì màn hình in ra “Còn 6 ngày nữa tới sinh nhật của An”.
Bài tập 9*: Yêu cầu nhập vào lãi suất cho vay theo năm (%),
số tiền vay (triệu đồng) và thời gian vay (tháng). Tính số tiền
lãi và gốc hằng tháng phải trả.
Lập trình Python căn bản 8/23/2022 29

You might also like