Page 109 - Em Học Python
P. 109
Có thể thấy, tuy các biến first_variable và second_variable không thể dùng được
bên ngoài hàm, nhưng biến another_variable (vốn được tạo ra ở bên ngoài ở ❶) lại có thể
dùng được bên trong hàm ở ❷.
Kết quả của đoạn code trên là:
>>> print(variable_test2())
20000
Có một bài toán thế này, giả sử em đang chế tạo một con tàu
vũ trụ siêu hiện đại bằng vỏ lon nước ngọt. Để làm ra bức vách cong
cong của con tàu, mỗi tuần em chỉ cần cắt 2 vỏ lon rồi làm phẳng nó
ra là xong. Nhưng để làm thân tàu thì em cần đâu đó 500 cái cơ. Ta có
thể viết một hàm để tính ra mất bao lâu thì ta mới có được 500 lon
nếu mỗi tuần em chỉ làm được 2 cái.
Hãy thử tạo một hàm để tính xem mỗi tuần em làm được bao nhiêu lon trong vòng
một năm nhé. Ta sẽ để số lon làm được mỗi tuần làm tham số:
>>> def spaceship_building(cans):
total_cans = 0
for week in range(1, 53):
total_cans = total_cans + cans
print('Week %s = %s cans' % (week, total_cans))
Ở dòng đầu tiên của hàm, ta tạo biến total_cans và cho nó giá trị ban đầu là 0. Sau
đó ta viết một vòng lặp cho từng tuần trong năm và cộng dồn vào số vỏ lon mà em làm
được trong từng tuần. Toàn bộ khối lệnh này chính là thân của hàm. Nhưng trong này còn
có một khối lệnh khác nữa: là hai dòng cuối, là khối lệnh của vòng for.
Viết và chạy thử hàm này trong shell với các giá trị khác nhau của cans:
>>> spaceship_building(2)
Week 1 = 2 cans
Week 2 = 4 cans
Week 3 = 6 cans
Week 4 = 8 cans
Week 5 = 10 cans
(...)
Tái sử dụng code với hàm và module 83