Căn bản với Python

Python là ngôn ngữ có nhiều nét tương đồng với Perl, C, và Java. Tuy nhiên, cũng có một vài sự khác nhau rõ ràng giữa chúng.

Chương trình Python đầu tiên

Phiên bản Python sử dụng là 2.7.11 nhé. Chúng ta sẽ thực thi các chương trình trong các chế độ khác nhau

Chế độ trình thông dịch (Interactive Mode Programming)

Gọi trình thông dịch mà không cần thông qua file script.

$ python
Python 2.7.11 (#1, Nov 11 2010, 13:34:43)
[GCC 4.1.2 20080704 (Red Hat 4.1.2-48)] on linux2
Type "help", "copyright", "credits" or "license" for more information.
>>>

On Windows:

Python 2.7.11 (v3.4.3:9b73f1c3e601, Feb 24 2015, 22:43:06) [MSC v.1600 32 bit (Intel)] on win32
Type "copyright", "credits" or "license()" for more information.
>>>

Nhập dòng sau vào cửa sổ dòng lệnh Python sau đó Enter:

>>> print "Hello, Python!"

Nếu bạn đang sử dụng phiên bản mới của Python (Python 3 trở lên) thì bạn cần phải thêm dấu ngoặc tròn vào lệnh print như print ("Hello, Python!"). Còn với phiên bản Python 2.7.11 thì không cần và dòng lệnh trên sẽ in ra kết quả là:

Hello, Python!

Script Mode Programming (thông dịch thông qua một script - một file)

Gọi trình thông dịch cùng với một file script thì nó sẽ thực thi từ đầu cho đến khi kết thúc script đó. Khi script được thực thi xong, trình thông dịch sẽ ngừng hoạt động.

Hãy viết một chương trình Python cơ bản trong một script. Các file Python có phần đuôi là .py. Viết những đoạn code sau vào file test.py:

print "Hello, Python!"

Giả sử rằng trình thông dịch Python của bạn đã được cài đặt trong một PATH variable (biến đường dẫn – dung để thực thi một chương trình bằng command line). Bậy giờ, hãy chạy chương trình trên bằng cách:

On Linux

$ python test.py

on Windows

C:\Python27>python test.py

Kết quả sẽ là:

Hello, Python!

Hãy thử một cách khác để thực thi script trên. Sửa đổi file test.py thành như sau:

!/usr/bin/python

print "Hello, Python!"

Giả sử rằng trình thông dịch Python trên máy bạn đã được setup với đường dẫn thư mục /usr/bin. Hãy chạy chương trình như sau:

$ chmod +x test.py # This is to make file executable
$./test.py

Kết quả sẽ là:

Hello, Python!

Các định danh trong Python

Một đinh danh trong Python là tên một biến, hàm, lớp, module hoặc một đối tượng. Một định danh bắt đầu bằng các chữ cái từ A - Z hoặc a - z hoặc dấu gạch dưới (_) và theo sau đó là các chữ cái hoặc dấu gạch dưới hoặc các số (0 - 9).

Python không cho phép dùng các ký tự như @, $, và % trong tên định danh. Python là một ngôn ngữ phân biệt chữ viết hoa và viết thường. Nên, Manpowermanpower là hai định danh khác nhau trong Python.

Đây là các quy ước đặt trên cho các định danh:

  • Tên lớp bắt đầu với một chữ cái hoa. Tất cả định danh khác bắt đầu với một chữ cái thường.
  • Bắt đầu một định danh với một dấu gạch dưới đơn chỉ rằng định danh đó là private.
  • Bắt đầu một định danh với hai dấu gạch dưới chỉ rằng định danh đó thực sự là private.
  • Nếu định danh cũng kết thúc với hai dấu gạch dưới (ví dụ __init), thì định danh này là một tên đặc biệt được định nghĩa bởi Python.

Các từ khóa

Danh sách sau chỉ ra những từ khóa trong Python. Đây là những từ dành riêng và bạn không thể sử dụng chúng như các hằng hay biến hay bất kỳ một tên định danh nào khác. Tất cả những từ khóa trong Python đều chỉ ở dạng chữ thường.

alt text

Dòng lệnh và thụt đầu dòng lệnh

Python không cung cấp các dấu ngoặc nhọn {} để chỉ từng khối code cho lớp và hàm,... Các khối lệnh sẽ được nhận biết bằng thụt đầu dòng, cái này là bắt buộc.

Số khoảng trắng trong việc thụt đầu dòng là tùy chọn, nhưng tất cả các lệnh bên trong khối phải được thụt cùng một số lượng khoảng trống như nhau. Ví dụ:

if True:
    print "True"
else:
    print "False"

Và cách viết sau sẽ tạo ra lỗi:

if True:
    print "Answer"
    print "True"
else:
    print "Answer"
  print "False"

Do đó, trong Python thì tất cả các dòng liên tiếp nhau mà được thụt đầu dòng với cùng lượng khoảng trống như nhau sẽ tạo nên một khối. Trong ví dụ tiếp theo sẽ có các khối lệnh đa dạng:

Chú ý: Đừng cố gắng hiểu logic của các dòng lệnh tại thời điểm này. Chỉ cần đảm bảo rằng bạn hiểu được các khối lệnh khác nhau ngay cả khi chúng không có dấu ngoặc nhọn.

!/usr/bin/python

import sys

try:

open file stream

     file = open(file_name, "w")
except IOError:
    print "There was an error writing to", file_name
    sys.exit()
print "Enter '", file_finish,
print "' When finished"
while file_text != file_finish:
    file_text = raw_input("Enter text: ")
    if file_text == file_finish:

close the file

        file.close
        break
    file.write(file_text)
    file.write("\n")
file.close()
file_name = raw_input("Enter filename: ")
if len(file_name) == 0:
    print "Next time please enter something"
    sys.exit()
try:
    file = open(file_name, "r")
except IOError:
    print "There was an error reading file"
    sys.exit()
file_text = file.read()
file.close()
print file_text

Một lệnh trên có nhiều dòng

Các lệnh trong Python thường kết thúc với một newline. Tuy nhiên, Python cho phép sử dụng ký tự \ để chỉ rõ sự liên tục dòng. Ví dụ:

total = item_one + \
   	 item_two + \
   	 item_three

Những lệnh chứa trong no dấu [], {}, hoặc () thì không cần sử dụng ký tự . Ví dụ:

days = ['Monday', 'Tuesday', 'Wednesday', 'Thursday', 'Friday']

Trích dẫn trong Python

Python chấp nhận dấu nháy đơn ('), nháy kép (') và nháy ba (''' or """) để biểu diễn các chuỗi, nhưng các chuối này phải có đóng mở chuỗi giống nhau.

Dấu nháy ba được sử dụng để dàn trải một chuỗi thành nhiều dòng. Ví dụ:

word = 'word'
sentence = "This is a sentence."
paragraph = """This is a paragraph. It is
made up of multiple lines and sentences."""

Comments (Bình luận hay dòng giải thich code) trong Python

Sử dụng ký tự dấu thằng # mà không đặt trong một chuỗi thì sẽ bắt đầu cho một comment. Tất cả ký tự ở sau dấu # và kéo dài cho đến hết dòng đó thì được coi là một comment và được bỏ qua bởi trình thông dịch. Ví dụ:

!/usr/bin/python

First comment

print "Hello, Python!" # second comment

Kết quả sẽ là:

Hello, Python!

Bạn có thể viết comment trên cùng một dòng và theo sau một lệnh, ví dụ:

name = "Madisetti" #This is again comment

Cũng có thể comment nhiều dòng:

This is a comment

This is a comment, too

This is a comment, too

I said that already

Sử dụng dòng trắng

Một dòng mà chỉ chứa khoảng trắng, thậm chí là có cả comment thì được xem như là một dòng trống và Python sẽ hoàn toàn bỏ qua nó. Trong một phiên làm việc của trình thông dịch, bạn phải nhập một dòng trống để kết thúc một khối lệnh nhiều dòng.

Lệnh chờ người dùng nhập liệu

Dòng lệnh sau sẽ hiển thị một hộp nhắc nhở, hiển thị rằng "Press the enter key to exit", và đợi người dùng nhập vào:

!/usr/bin/python

raw_input("\n\nPress the enter key to exit.")

Với Python3 thì chỉ là:

!/usr/bin/python3

input("\n\nPress the enter key to exit.")

Ở đây, "\n\n" được sử dụng để tạo hai dòng trắng trước khi hiển thị dòng nhập liệu. Một khi người dùng ấn phím, chương trình sẽ kết thúc. Đây là một thủ thuật hay để giữ cửa sổ dòng lệnh mở cho đến khi người dùng kết thúc một ứng dụng.

Nhiều lệnh trên một dòng đơn

Dấu chấm phẩy (😉 cho phép nhiều lệnh trên cùng một dòng đơn mà bỏ qua sự bắt đầu một khối lệnh mới. Ví du:

import sys; x = 'foo'; sys.stdout.write(x + '\n')

Các nhóm lệnh (hay con gọi Suites)

Một nhóm các dòng lệnh đơn sẽ tạo nên một khối lệnh trong Python và được gọi là Suites. Những lệnh phực hợp như if, while, def, và class đều yêu cầu một dòng header và một suite. Các dòng header bắt đầu lệnh (với từ khóa) và kết thúc với một dầu hai chấm (😃 và được theo sau bởi một hoặc nhiều dòng để tạo nên một suite. Ví dụ như:

if expression :
   	suite
elif expression :
  	suite
else :
   	suite

Các tham số dòng lệnh

Nhiều chương trình có thể chạy để cung cấp cho bạn một số thông tin cơ bản về cách hoạt động của chúng. Python có thể làm được điều này bằng cách:

$ python -h
usage: python [option] ... [-c cmd | -m mod | file | -] [arg] ...
Options and arguments (and corresponding environment variables):
-c cmd : program passed in as string (terminates option list)
-d : debug output from parser (also PYTHONDEBUG=x)
-E : ignore environment variables (such as PYTHONPATH)
-h : print this help message and exit

[ etc. ]

Bạn cũng có thể lập trình cho file script của bạn theo cách mà nó sẽ chấp nhận nhiều lựa chọn khác nhau. Commant Line Argument là một topic nâng cao hơn và bạn có thể nghiên cứu sau khi bạn hoàn thành phần còn lại các khái niệm trong Python.

Nguồn: tutorialspoint.com


All Rights Reserved