- vừa được xem lúc

Tìm hiểu cơ bản về Python (P1)

0 0 35

Người đăng: Phan Van Hung

Theo Viblo Asia

Hello, xin chào mọi người, mình là một dev FE, nhưng mấy hôm nay thấy hứng thú với python nên quyết định làm 1 series về những gì mà mình học được. Lưu ý là những chia sẽ của mình cũng là một thằng bắt đọc học python thôi nhé. Mục đích là sau nàyy, mình có thể tự đọc lại những gì mình tìm hiểu được mà không cần mất nhiều thời gian đọc docs. Mình có search và biết có web này học python cơ bản: Learn python, nên mình sẽ dựa vào website này để tìm hiểuu. Cùng tìm hiều python với mình nhé.

Mở đầu

python là một ngôn ngữ hướng đối tượng, cao cấp, mạnh mẽ. Python có cấu trúc dữ liệu cấp cao mạnh mẽ và cách tiếp cận đơn giản nhưng hiệu quả đối với lập trình hướng đối tượng. Cú pháp lệnh của Python là điểm cộng vô cùng lớn vì sự rõ ràng, dễ hiểu và cách gõ linh động làm cho nó nhanh chóng trở thành một ngôn ngữ lý tưởng để viết script và phát triển ứng dụng trong nhiều lĩnh vực, ở hầu hết các nền tảng.

Có 2 phiên bản chính, đó là python 2python 3. Theo như tài liệu thì 2 phiên bản khá khác nhau và trong tutorial sử dụn python 3 nên mình cũng làm theo luôn (Chứ có biết nó khác nhau cái gì đâu, cứ mới nhất mà "nã" ?)

Learn basic

Hello, worlld!

Hello, world! bài học vỡ lòng của mọi ngôn ngữ lập trình nhỉ ?. Để in một chuỗi, số,... trong python, chúng ta sử dụng cú pháp print.

print("This line will be printed.");
print(4);

Nếu là javascript thì sẽ là console.log đấy. Trong javascript các bạn biết rằng các block của function, classs, vòng lặp sẽ là {}, nhưng trong python thì sẽ là các indentation (thụt lề) sừ dụng tab hoặc (dấu cách) đều được. Theo chuẩn python thì sẽ là 4 dấu cách.

if x == 1: # indented four spaces print("x is 1.")

Tiếp theo, chúng ta sẽ đến với variables và type

Variables and Types

Number

Python hỗ trợ 2 kiểu: IntFloat. Để khai báo integer, chúng ta dùng syntax sau:

int = 4;
print(int);

Khai báo floating

myfloat = 7.5;
print(myfloat);

Strings

String được khai báo trong dấu nháy đơn hoặc dấu nháy kép

mystring = 'Hello'
print(mystring)
mystring = "hello"
print(mystring)

Việc dùng dấu nháy kép có thể bao gồm một hoặc nhiều dấu nháy đơn bên trong nó

mystring = "Don't worry about apostrophes";
print(mystring);

Gán biến trong một line code

a, b = 3, 4
print(a,b)

Lists

List cũng tương tự như array, List có thể chứa nhiều loại biến và truy cập các phần tử một cách dễ dàng.

mylist = []
mylist.append(1)
mylist.append(2)
mylist.append(3)
print(mylist[0]) # prints 1
print(mylist[1]) # prints 2
print(mylist[2]) # prints 3 # prints out 1,2,3
for x in mylist: print(x)

Truy cập một index không tồn tại trong List sẽ gây ra error

mylist = [1,2,3]
print(mylist[10]) // An error

Basic operators

Arithmetic Operators

Cũng giống như các ngôn ngữ khác, các toán tử cộng, trừ, nhân, chia cũng sẽ được dùng trên các type numbers

number = 1 + 2 * 3 / 4.0
print(number)

Một toán tử khác cũng được sử dụng là % (chia lấy dư)

remainder = 11 % 3
print(remainder)

Khác với Javascript một số syntax về Math cũng đơn giản hơn, ví dụ như luỹ thừa của một số

squared = 7 ** 2
cubed = 2 ** 3
print(squared)
print(cubed)

Operators with Lists

Việc nối 2 lists với nhau cũng khá dễ dàng và tường minh

even_numbers = [2,4,6,8]
odd_numbers = [1,3,5,7]
all_numbers = odd_numbers + even_numbers
print(all_numbers)

Cũng như với String, Python cũng hỗ trợ tạo list mới với các phần tử lặp bằng toán tử nhân

print("hello" * 3) // "hellohellohello
print([1,2,3] * 3) // [1,2,3,1,2,3,1,2,3]

String Formatting

Python sử dụng định dạng chuỗi kiểu C để tạo chuỗi mới. Toán tử "%" được sử dụng để định dạng một tập hợp các biến nằm trong một "tuple" (danh sách kích thước cố định), cùng với một chuỗi định dạng, chứa văn bản bình thường cùng với "ký hiệu đối số", các ký hiệu đặc biệt như "% s" và "% d".

# This prints out "Hello, John!"
name = "John"
print("Hello, %s!" % name)

Để dùng 2 hoặc nhiều đối số đặc biệt.

# This prints out "John is 23 years old."
name = "John"
age = 23
print("%s is %d years old." % (name, age))

Có một vài đối số đặc biệt như: %s - String (or any object with a string representation, like numbers)

%d - Integers

%f - Floating

%.<number of digits>f - Floating : Số chữ số sau dấu thập phân

%x/%X - Integers (hệ hex) (lowercase/uppercase)

Continue...

Hôm nay đến đây thôi, cảm ơn mn đã theo dõi, vì là một người mới dấn thân vào python nên những kiến thức mình học được khá basic. Trong bài viết chỗ nào còn thiếu sót mn cứ cmt để mình học hỏi thêm nhé. (bow)

Bình luận

Bài viết tương tự

- vừa được xem lúc

Sử dụng recoil thay thế redux ?

Như chúng ta đã biết quản lí state trong react đôi lúc rất khó khăn đó là lí do tại sao chúng ta sử dụng redux hoặc một số thư viện khác như mobx để giúp việc quản lí state trở nên dễ dàng hơn. Recoil cũng là một thư viện quản lí state được mô phỏng chặt chẽ theo các API của react hook.

0 0 202

- vừa được xem lúc

Kiến thức aws vụn vặt.

Cloud computing. Cloud computing được định nghĩa như sau: Cloud computing là điện toán đám mây, cung cấp tài nguyên IT theo yêu cầu thông qua Internet.

0 0 38

- vừa được xem lúc

Tổng quan về kiểm thử tự động: Định nghĩa, lợi ích, quy trình, các loại hình và cách áp dụng vào dự án

1. Kiểm thử tự động là gì. 2. Các lý do sau đây sẽ giúp bạn hiểu rõ hơn về tầm quan trọng của kiểm thử tự động:.

0 0 23

- vừa được xem lúc

Ứng dụng Kiểm Thử Tự Động vào nhóm dự án Agile

Phương pháp phát triển phần mềm theo triết lý/mô hình Agile đang ngày càng trở nên phổ biến trên khắp thế giới. Các công ty, doanh nghiệp và nhóm dự án vì thế cũng cần một cách thức kiểm thử phần mềm

0 0 31

- vừa được xem lúc

Tool testing guide for new Python developer

Lời mở đầu. Hello everyone, long time no see, nay tôi sẽ trở lại với bài dịch liên quan đến một bước crucial trong software development.

0 0 33

- vừa được xem lúc

System Design - Nguyên tắc cơ bản về thiết kế hệ thống

Trong bài viết này, chúng ta sẽ đi tìm hiểu về cái khái niệm, nguyên tắc cơ bản trong thiết kế hệ thống (system design) như là: khả năng mở rộng (scalability), thông lượng (throughput), băng thông (ba

0 0 17