Assignment Statement

Assignment statement គឺ​ជា​សញ្ញា = ដែល​ជា​បញ្ជា​តំរូវ​អោយ​ភ្ជាប់​ឈ្មោះ​ណាមួយ​ទៅ​នឹង​វត្ថុ​ណា​មួយ​។ យើង​គួរ​រំលឹក​ឡើងវិញ​ថា ដើម្បី​ភ្ជាប់​ឈ្មោះ​ណាមួយ​ទៅ​នឹង​វត្ថុ​ណាមួយ យើង​ត្រូវ​ធ្វើ​ដូច​ខាង​ក្រោម​នេះ៖

profit = 1000

print(profit)
1000

ក្រៅ​ពី​ការភ្ជាប់​ឈ្មោះ​ណា​មួយ ទៅ​នឹង​វត្ថុ​ណា​មួយ យើង​អាច​ភ្ជាប់​ឈ្មោះ​ជាច្រើន​ទៅ​នឹង​វត្ថុ​មួយ​ចំនូន ដោយ​សរសេរ​កម្មវិធី​ដូច​ខាង​ក្រោម​នេះ៖

sale, buy, profit = 1000, 900, 100

print(sale)
print(buy)
print(profit)
1000
900
100

យើង​បាន​ដឹង​រួម​មក​ហើយ​ថា ការសរសេរ​ថា sale, buy, profit និងការសរសេរ​ថា 1000, 900, 100 គឺ​ជាការបង្កើត​កំរង tuple (sale, buy, profit) និង​កំរង tuple (1000, 900, 100) ។ ដូចនេះ ការសរសេរថា sale, buy, profit = 1000, 900, 100 ស្មើ​នឹង​ការសរសេរ​ថា (sale, buy, profit) = (1000, 900, 100) ។ សរុបមក ការសរសេរ​ថា sale, buy, profit = 1000, 900, 100 គឺ​ជា​ការប្រើប្រាស់ assignment statement ដើម្បី​ភ្ជា់ប​ឈ្មោះ​នៅ​ក្នុង​កំរង tuple មួយ​ទៅ​នឹង​វត្ថុ​នៅ​ក្នុង​កំរង tuple មួយ​ទៀត​។

ដូច​គ្នា​ដែរ ក្រៅ​ពី​កំរង tuple យើង​ក៏​អាច​ភ្ជាប់​ឈ្មោះ​នៅ​ក្នុង​កំរង list ទៅ​នឹង​វត្ថុ​នៅ​ក្នុង​កំរង​ប្រភេទ​ណា​ក៏​បាន​ដែរ​។ ពិនិត្យ​កម្មវិធី​ខាង​ក្រោម​នេះ៖

[sale, buy, profit] = [1000, 900, 100]
(width, height, depth) = [30, 15, 10]
[name, last_name, age] = ('Kosal', 'Keo', 35)

print(sale)
print(width)
print(last_name)
1000
30
Keo

លើស​ពី​នេះ​ទៀត យើង​ក៏​អាច​ប្រើប្រាស់​ assignment statement ដើម្បី​ធ្វើការផ្តោះប្តូរ​ឈ្មោះ​របស់​វត្ថុ​ពីរ ទៅវិញ​ទៅ​មក​បាន​ដែរ​។

width = 173.33
larger = 200

width, larger = larger, width
print(width)
print(larger)
200
173.33

ក្រៅ​ពី​ការប្រើប្រាស់​ assignment statement ដើម្បី​ភ្ជាប់​ឈ្មោះ​មួយ​ទៅ​នឹង​វត្ថុ​មួយ យើង​ក៏​អាច​ភ្ជាប់​ឈ្មោះ​ជា​ច្រើន​ទៅ​នឹង​វត្ថុ​តែ​មួយ ដោយ​ធ្វើ​ដូច​ខាង​ក្រោម​នេះ៖
sale = buy = fee = 1000

print(sale)
print(buy)
print(fee)
1000
1000
1000

នៅ​ក្នុង​ភាសា Python យើង​អាច​ធ្វើ​ប្រមាណវិធី​ម៉្យាង ដូច​ខាង​ក្រោម​នេះ៖

sale = 1000
sale = sale + 1

print(sale)
1001

sale = sale + 1 គឺ​ជាការ​ប្រើប្រាស់ assignment statement ដើម្បី​បង្កើន​តំលៃ​វត្ថុ​ឈ្មោះ sale អោយ​ធំ​ជាងមុន 1 ។ ការធ្វើ​ប្រមាណវិធី​តាម​របៀបនេះ ត្រូវ​គេ​ហៅ​ថា​ជា augmented assignment ដែល​អាច​ត្រូវ​សរសេរ​តាម​របៀប​ម៉្យាងទៀត ដូច​ខាង​ក្រោម​នេះ៖

sale = 1000
sale += 1

print(sale)
1001

ក្រៅ​ពី​ការប្រើប្រាស់ augmented assignment ជា​មួយ​នឹង operator + យើង​ក៏​អាច​ប្រើប្រាស់ augmented assignment នេះ​ជាមួយ​នឹង operator ផ្សេង​ៗ​ទៀត​បាន​ដែរ​។

sale = 1000
sale += 2
sale -= 2
sale *= 2
sale /= 2
sale //= 2
sale %= 2
sale **= 2

ដូច​គ្នា​ដែរ យើង​អាច​ប្រើប្រាស់ augmented assignment នេះ​ជាមួយ​នឹង​ឃ្លា​ប្រយោគ​ផ្សេង​ៗ​បាន​ផង​ដែរ​។

saying = 'Drop by drop water breaks a stone.'

saying += '\n'
saying *= 3
print(saying)
Drop by drop water breaks a stone.
Drop by drop water breaks a stone.
Drop by drop water breaks a stone.

ដូច​គ្នា​ដែរ យើង​អាច​ប្រើប្រាស់ augmented assignment ជាមួយ​នឹង​កំរង tuple ផ្សេង​ៗ​ដូច​ខាង​ក្រោម​នេះ៖

mytuple = (100, 'profit')

mytuple += (50, True)
print(mytuple)
mytuple *= 2
print(mytuple)
(100, 'profit', 50, True)
(100, 'profit', 50, True, 100, 'profit', 50, True)

ដូច​គ្នា​ដែរ យើង​អាច​ប្រើប្រាស់ augmented assignment ជាមួយ​នឹង​កំរង list ដូច​ខាងក្រោម​នេះ៖

mylist = [100, 'profit']

mylist += [50, True]
print(mylist)
mylist *= 2
print(mylist)
[100, 'profit', 50, True]
[100, 'profit', 50, True, 100, 'profit', 50, True]

ដូច​គ្នា​ដែរ យើង​អាច​ប្រើប្រាស់ augmented assignment ជាមួយ​នឹង​សំណុំ set ដូច​ខាងក្រោម​នេះ៖

myset = {100, 1.5, 'profit'}

myset -= {1.5}
print(myset)
myset |= {50, 4, True}
print(myset)
myset &= {50, 4, True}
print(myset)
myset ^= {100, 1.5}
print(myset)
{100, 'profit'}
{True, 50, 100, 4, 'profit'}
{True, 50, 4}
{True, 1.5, 100, 4, 50}