光圈先決︰f/6.3
ISO 200
快門︰1/500 秒
因相片等效焦距為 216mm,怕不夠光,所以將 ISO 調至 200。雖然 ISO 200 Noise 絕對不明顯,但相機將快門設定為 1/500 秒,根本沒有需要這麼快,下次可嘗試用 ISO 100.
光圈先決︰f/6.3
ISO 200
快門︰1/500 秒
因相片等效焦距為 216mm,怕不夠光,所以將 ISO 調至 200。雖然 ISO 200 Noise 絕對不明顯,但相機將快門設定為 1/500 秒,根本沒有需要這麼快,下次可嘗試用 ISO 100.
malicious: having or showing a desire to harm somebody or hurt their feelings, caused by a feeling of hate
cascade: a number of things happening, in which each one leads to another
intrusive: too direct, easy to notice, etc. in a way that is annoying or upsetting
dwelling: a house, flat, etc. where a person lives
heuristics: a method of solving problems by finding practical ways of dealing with them, learning from past experience
心理捷思法(mental heuristics)在心理學中指的是一種快速、簡化的思考方式,用來幫助我們在有限時間與資訊下做決策。它能節省心力與時間,但也可能導致偏差或錯誤判斷。
Microsoft Copilot
revert: to come or go back (as to a former condition, period, or subject)
compelled: having to do something, because you are forced to or feel it is necessary
ingrained (in somebody/something) (of a habit, an attitude, etc.) that has existed for a long time and is therefore difficult to change
panoramic: with a view of a wide area of land
demoralizing: making somebody lose confidence or hope
huff: to say something or make a noise in a way that shows you are offended or annoyed
ditch: to get rid of something/somebody because you no longer want or need it/them
groundwork: work that is done as preparation for other work that will be done later
delve: to reach inside a bag, container, etc. to search for something
Nicole Vignola "Rewire"
hk.dictionary.search.yahoo.com
oxfordlearnersdictionaries.com
merriam-webster.com
dictionary.cambridge.org
mannerism: a particular habit or way of speaking or behaving that somebody has but is not aware of
Venezuela: country (a republic) bordering the Caribbean Sea in northern South America; capital Caracas area 352,144 square miles (912,050 square kilometers), population 31,869,000
tribe: a social group in a traditional society consisting of people with the same language, culture, religion, etc., living in a particular area and often having one leader known as a chief
Ye'kuana: a Cariban-speaking tropical rain-forest tribe
weird: very strange or unusual and difficult to explain
sentiment: a feeling or an opinion, especially one based on emotions
What a weird sentiment it is to think that as adults we have the ability to mould and shape a child to become who they will be in their adulthood, and most of the time we do not even realize we are doing it.
Nicole Vignola "Rewire"
孩子不是被動接受者,而是透過與成人的互動建構內在模式(internal working model),這會影響他們未來的人際關係與自我認知。
Microsoft Copilot
neurodivergent: differing in mental or neurological function from what is considered typical or normal (frequently used with reference to autistic spectrum disorders); not neurotypical
nuanced: with very slight differences in meaning or expression
rampant: existing or spreading everywhere in a way that cannot be controlled
Suggestibility is a psychological trait where an individual easily accepts and acts upon ideas, opinions, or information suggested by others, often without critical analysis.
groggy: weak and unsteady on the feet or in action
If someone or something is hardwired to do a particular thing, they automatically do it and cannot change that behavior.
modality: the particular way in which something exists, is experienced or is done
We are not born with low self-esteem and ruminating thoughts.
Microsoft Copilot Explanation:
人際敏感度高者容易把別人的反應內化為自我評價,進而反覆思考。
記錄思維:寫下反覆出現的想法,標註證據與反證,練習以不同角度詮釋。
Nicole Vignola "Rewire"
hk.dictionary.search.yahoo.com
oxfordlearnersdictionaries.com
merriam-webster.com
dictionary.cambridge.org
['Yeah' if n % 15 == 0 else 'Yo' if n % 3 == 0 else 'Hey' if n % 5 == 0 else n for n in range(1, 101)]
Python Course
numbers = set([1, 2, 2, 3])
[] in above example are just creating a list before converting it into a set.[1, 2, 2, 3] → this is a list literal in Python.
Lists can contain duplicates and preserve order.
Then set([...]) takes that list and removes duplicates, giving {1, 2, 3}.
So the square brackets are not part of the set itself — they’re simply defining the list that you pass into set().
Microsoft Copilot
perpetuate: to make something such as a bad situation, a belief, etc. continue for a long time
ingrained: (of a habit, an attitude, etc.) that has existed for a long time and is therefore difficult to change
concerted: done in a planned and determined way
Research shows that older people who remain physically active throughout old age have more proteins in the brain that keep the connections between the neurons strong and healthy.
rumination: the act of thinking deeply about something; deep thoughts about something
exhume: dig up
dismantle: the act of thinking deeply about something; deep thoughts about something
Nicole Vignola "Rewire"
如果年紀大了還常常運動,腦袋裡的「連接」會比較健康。
這些連接就像電線,把腦細胞連在一起。
運動能幫助腦袋製造更多「保護電線的材料」,讓腦細胞之間的訊息傳得更快、更清楚。
「保護電線的材料」不是髓鞘,而是另一類叫做突觸蛋白。它們不是包住神經的,而是幫助腦細胞之間的「接頭」更牢固,讓訊息在細胞之間傳遞得更好。
Microsoft Copilot
consummate: showing great skill; perfect
polymath: a person who knows a lot about many different subjects
gusto: enthusiasm and energy in doing something
knock out: to surprise and impress somebody very much
lurch: to make a sudden, unsteady movement forward or to one side
Bill Gates "Source Code"
Online Dictionaries Used:
hk.dictionary.search.yahoo.com
www.oxfordlearnersdictionaries.com
以三腳架 + 低 ISO + 小一點光圈 + 手動白平衡拍攝植物特寫
建議起始設定
拍攝模式:M 模式,方便固定曝光。
ISO:100,盡量保持最低以減少雜訊。
光圈:f/8 到 f/11,通常最實用;植物特寫要兼顧清晰度和景深,這個範圍較穩。
快門:有三腳架可先由 1/10s 到 1s 試拍,再看曝光是否足夠;如果植物會微微擺動,就要再加快。
對焦:單點 AF 或直接手動對焦,對在你最想清楚的位置,例如花蕊、葉脈、露珠邊緣。
影像防震:上三腳架時可關閉鏡頭 IS,避免防震系統在長曝下反而造成輕微抖動。
白平衡:室內有燈光,先用 AWB 試拍;如果顏色偏黃或偏綠,改用 鎢絲燈 / 白光管。
鏡頭焦段怎樣用
50mm 到 135mm 比較適合植物特寫,畫面會更自然,背景也更容易壓乾淨。
如果你想突出單一葉片、花朵局部,先試 85mm 到 135mm。
18mm 到 35mm 也能拍,但容易把背景和白布一起拍得太多,特寫感會弱一些。
室內白背景要注意
光線最好用柔光,例如燈照向白牆、柔光布、或反射到白紙板,避免葉面反光太硬。植物攝影也常靠穩定三腳架和適當控光來保細節。
拍攝小技巧
用 2 秒自拍或遙控,減少按快門震動。
背景白但不要過曝成一大片死白,保留一點層次會更好看。
若葉面反光明顯,可以稍微改變燈角度,比單純後製更有效。
Perplexity.ai
M mode
ISO:100
135mm*1.6 = 216mm
f/9
0.5s
shawl IPA[ʃɔːl]
披肩
scarf IPA[skɑːf]
圍巾
A scarf (圍巾) is usually long and narrow, worn around the neck for warmth or style, while a shawl (披肩) is larger and wider, draped over the shoulders or upper body for coverage and elegance.
Microsoft Copilot
In Python, a defaultdict is a special kind of dictionary from the collections module. Its main advantage is that it automatically provides a default value for any key that doesn’t exist yet, instead of raising a KeyError.
You create it by passing in a default factory function (like int, list, or set).
When you access a missing key, defaultdict calls that factory to create a default value and stores it under that key.
In Python, the get() function is a method of dictionaries. It’s used to safely retrieve the value for a given key without risking a KeyError if the key doesn’t exist.
In Python, a set is a built‑in data type that represents an unordered collection of unique elements. Think of it like a mathematical set: no duplicates, and order doesn’t matter.
Unique elements only → duplicates are automatically removed.
Unordered → items don’t have a fixed position or index.
Mutable → you can add or remove elements.
Fast membership tests → checking if something is in a set is very efficient.
# Using curly braces fruits = {"apple", "banana", "cherry"} # Using the set() constructor numbers = set([1, 2, 2, 3]) print(numbers) # {1, 2, 3} (duplicates removed)
In Python, item[1:3] is an example of list slicing (or sequence slicing).
item is assumed to be a list (or another sequence like a string or tuple).
[1:3] means:
Start at index 1 (the second element, since Python uses zero‑based indexing).
Stop before index 3 (so it includes elements at positions 1 and 2, but not 3).
In Python, item[1:] is another example of slicing.
1: means start at index 1 (the second element, since indexing starts at 0).
The colon without an end index means go all the way to the end.
So item[1:] returns everything from index 1 onward.
A nested list comprehension in Python is simply a list comprehension inside another one. It’s often used to flatten lists, generate combinations, or apply transformations across multiple levels of data.
[expression for outer in iterable1 for inner in iterable2]
The outer loop runs first, then the inner loop.
You can nest more than two loops if needed.
To apply a function someFunc to all comments in a list of blog objects using a nested list comprehension
[[someFunc(comment) for comment in blog.comments] for blog in blogs]
Outer loop → for blog in blogs → iterate through each blog object.
Inner loop → for comment in blog.comments → iterate through each comment in that blog.
Expression → someFunc(comment) → apply your function to each comment.
Result → a list of lists, where each inner list contains the processed comments for one blog.
def someFunc(text):
return text.upper()
class Blog:
def __init__(self, comments):
self.comments = comments
blogs = [
Blog(["Nice post!", "Great read"]),
Blog(["Interesting idea", "Could be improved"]),
Blog(["Loved it", "Thanks for sharing"])
]
processed = [[someFunc(comment) for comment in blog.comments] for blog in blogs]
print(processed)
Result:[['NICE POST!', 'GREAT READ'],
['INTERESTING IDEA', 'COULD BE IMPROVED'],
['LOVED IT', 'THANKS FOR SHARING']]
__init__ → the special method that runs automatically when you create a new object from the class.
self → refers to the new object being created.
comments → a parameter you pass in when creating the object.
self.comments = comments → stores the passed‑in value as an attribute of the object, so you can access it later.
class Blog:
def __init__(self, comments):
self.comments = comments
# Create a Blog object with a list of comments
blog1 = Blog(["Nice post!", "Great read"])
print(blog1.comments) # ['Nice post!', 'Great read']
When you call Blog(["Nice post!", "Great read"]), Python automatically calls __init__.
The comments list is passed in and stored as self.comments.
Now the object blog1 has an attribute comments you can use anywhere.
list(range(101))[::5]
range(101) → generates numbers from 0 up to 100 (inclusive).
So list(range(101)) = [0, 1, 2, 3, ..., 100].
[::5] → slice syntax with:
start = empty → defaults to beginning (0).
stop = empty → defaults to end (100).
step = 5 → take every 5th element.
Result → all multiples of 5 between 0 and 100.
list(range(101))[::-5]
Step 1: Build the list
list(range(101)) → [0, 1, 2, 3, ..., 100]
Step 2: Understand the slice
The slice is [::-5], which means:
start → empty → defaults to the end of the list.
stop → empty → defaults to the beginning.
step = -5 → move backwards, taking every 5th element.
Microsoft Copilot
(char, count) tuple in encodedList.outlier: a person or thing that is different from or in a position away from others in the group
brim: to be full of something
underscore: to emphasize or show that something is important or true
chalk up: (informal) to achieve or record a success, points in a game, etc.
to trip over something: to fall over, to stumble on, to slip on something
spill out: to tell somebody all about a problem etc. very quickly; to come out quickly
goad: to keep annoying somebody/something until they react
scrap something: to cancel or get rid of something that is no longer practical or useful
cotton candy: a type of sweet in the form of a mass of sticky threads made from melted sugar and served on a stick, especially at fairgrounds
if a computer crashes or you crash a computer, it stops working suddenly
spawn: to cause something to develop or be produced
rightfully: according to the law or to what is right or correct
flawed: having a flaw; not perfect or correct
horde: a large crowd of people
boomerang: if a plan boomerangs on somebody, it hurts them instead of the person it was intended to hurt
Bill Gates "Source Code"
Online Dictionaries Used:
hk.dictionary.search.yahoo.com
www.oxfordlearnersdictionaries.com
大主管將我投閒置散,我這個小主管怎都要做一些事情。內地姐姐離職,樓下 Pop-up Store 工作環境有改善,正是時機。天下武功,唯快不破。小朋友不明白我便解釋給他聽。小朋友問我為什麼不私下與大主管商討人手安排,而選擇一開始便在群組提議,認為我以下犯上,架空權力。可是,小朋友沒有想到私下商討失敗了,再在群組反抗會有什麼後果。區經叫我和大主管多溝通,面對面是行不通的,因為大主管經常扮失憶,要用文字溝通,要有根有據。區經說 Pop-up stores 可交給彩虹姐姐 Run, 叫我多專注主舖的工作。在群組提議了,就算大主管沒有接納,區經都知道發生什麼事。題外話,大主管放假的時候會吩咐我做一些工作。上班要完成上司給我的工作十分正常,但問題是大主管會遙控彩虹姐姐,監察我的工作情況。被監察的我,一點也不好受。對著時常設陷阱的主管,對人的工作,心很累。
今年仲夏(6–8月)香港預料會比常年偏熱,天文台指出全年平均氣溫「偏高」,並有較高機會進入歷史前十名;媒體與專家估計市區最高溫可能逼近或超過38°C(HKO)。城市熱島效應會令市區比郊區高 約 3–4°C,屯門相對新界內陸或山區仍會感到悶熱但略低於市中心。
Microsoft Copilot
香港今年仲夏(大約6至8月)大機會偏熱,天文台最新季節預報亦指出2026年6月至8月香港氣溫「高於正常」而雨量「正常至偏少」的機會稍高。
perplexity.ai and HKO
根據香港天文台最新的季度預報,在氣候持續暖化與厄爾尼諾現象等多重因素影響下,預料香港今年仲夏(6月至8月)的氣溫會高於正常,且全年平均氣溫有很大機會躋身歷史最高首十位。
gemini.google.com
def encodeString(stringVal):
encodedList = []
prevChar = stringVal[0]
count = 0
for char in stringVal:
if prevChar != char:
encodedList.append((prevChar, count))
count = 0
prevChar = char
count = count + 1
encodedList.append((prevChar, count))
return encodedList
encodedList = [] → empty list to store results.
prevChar = stringVal[0] → start with the first character of the string.
count = 0 → counter for consecutive occurrences.
If the current character is different from the previous one:
Save the previous character and its count into encodedList.
Reset count to 0.
Update prevChar to the new character.
When you hit a character change, you first append the tuple (prevChar, count) to encodedList.
At that moment, the value of count is already finalized for that run (e.g., 3 for 'a').That tuple is stored in the list and won’t be touched again
After saving, you reset count = 0 because you’re about to start counting a new run for the next character.
This reset only affects future counting, not the already-saved tuple.
(character, count) tuples.Take "aaabbc" as input:
Start: prevChar = 'a', count = 0
Loop:
'a' → same as prevChar → count = 1
'a' → same → count = 2
'a' → same → count = 3
'b' → different!
Save ('a', 3)
Reset count = 0
Update prevChar = 'b'
Then increment → count = 1
'b' → same → count = 2
'c' → different!
Save ('b', 2)
Reset count = 0
Update prevChar = 'c'
Then increment → count = 1
End of loop → Save ('c', 1)
Result: [('a', 3), ('b', 2), ('c', 1)]
catnap: a short sleep
pickled: (of food) preserved in vinegar
chile con queso: (in Tex-Mex cooking) a thick sauce of melted cheese seasoned with chilli peppers, typically served warm as a dip for tortilla chips
bequeath: pass (something) on or leave (something) to someone else
Plymouth was a beloved American automobile brand produced by the Chrysler Corporation from 1928 until 2001.
tow: to pull a car, boat, etc. behind another vehicle, using a rope or chain
junkyard: a place where old cars, machines, etc. are collected, so that parts of them, or the metal they are made of, can be sold to be used again
a chunk of: (informal) a fairly large amount of something
fetch: to go to where somebody/something is and bring them/it back
cruising: (of a car, etc. or its driver) to drive along slowly, especially when you are looking at or for something
rear-wheel drive: a system in which power from the engine is sent to the back wheels of a vehicle
fishtail: if a vehicle fishtails, the back end slides from side to side
joyriding: the crime of stealing a car and driving it for pleasure, usually in a fast and dangerous way
barbed wire: strong wire with short sharp points on it, used especially for fences
bail out: to escape from a situation that you no longer want to be involved in
pint: a pint of beer (especially in a pub)
foible: a silly habit or a strange or weak aspect of a person’s character that is not considered serious by other people
frenzy: a state of great activity and strong emotion that is often violent or frightening and not under control
attribute something to something: to say or believe that something is the result of a particular thing
intimidate: to frighten or threaten somebody so that they will do what you want
deferential: showing that you respect somebody/something, especially somebody older or more senior than you
"To get a kick out of" is an idiom that means to really enjoy something, or to get a strong feeling of excitement and pleasure from doing or experiencing it.
bemused: showing that you are confused and unable to think clearly
bide: to stay or live in a place
insubordination: the act of refusing to obey orders or show respect for somebody who has a higher rank
Bill Gates "Source Code"
Online Dictionaries Used:
hk.dictionary.search.yahoo.com
www.oxfordlearnersdictionaries.com
Google AI overview
Revision:
In Python, lists, tuples, sets, and dictionaries are all built-in data structures, but they differ in mutability, ordering, and how they store data. Lists and dictionaries are mutable, tuples are immutable, and sets enforce uniqueness. Dictionaries store key–value pairs, while the others store single values.
List: [ ]
Tuple: ( )
Set: { } or set()
Dictionary: {key: value}
myList = [1,2,3,4,5]
[2*item for item in myList]
This a list comprehension, not a for loop.
In a for ... in loop, the colon (:) is mandatory because it introduces a block of indented code.
for item in myList:
print(2*item)
bear down on: to move quickly toward someone or something in a determined way
get something off the ground: to start happening successfully; to make something start happening successfully
payroll: a list of people employed by a company showing the amount of money to be paid to each of them
mundane: not interesting or exciting
monte: a card game
viable: that can be done; that will be successful
topology: a branch of mathematics concerned with those properties of geometric configurations (such as point sets) which are unaltered by elastic deformations (such as a stretching or a twisting) that are homeomorphisms
disabuse somebody (of something) to tell somebody that what they think is true is, in fact, not true
Bill Gates "Source Code"
Online Dictionaries Used:
hk.dictionary.search.yahoo.com
www.oxfordlearnersdictionaries.com
www.merriam-webster.com
Aperture Priority (光圈先決): f/9
ISO: 100
(Shutter Speed) 快門: 1/100 second
Focal Length (焦距): 135mm
Equivalent Focal Length (等效焦距): 216mm
Tripod Used and Image Stabilizer Off
White Balance (白平衡): Shade (陰影模式)
效果:相機會自動加暖色調,橘色比肉眼看更明顯
負曝光補償(Exposure Compensation): -1ev
Landscape Picture Style (Contrast: +1, Saturation: +1)
Evaluative Metering (權衡式測光)
Manfrotto MKBFRTA4GT-BH
Designed for the advanced travel photographer, this tripod is extremely portable and solid. Ideal for mirrorless cameras or medium format DSLRs.
Key features:
Bill Gates and Paul Allen kick-started the personal computer revolution by writing Altair BASIC in 1975 to run on the Altair 8800. This software was the first product of their newly formed company, Microsoft.
Stephen Gary Wozniak is an American technology entrepreneur, electrical engineer, computer programmer, and inventor. In 1976, he co-founded Apple Computer (now Apple Inc.) with his early business partner Steve Jobs. Through his work at Apple in the 1970s and 1980s, he is widely recognized as one of the most prominent pioneers of the personal computer revolution.
The Homebrew Computer Club was an early computer hobbyist group in Menlo Park, California, which met from March 1975 to December 1986.
Monte Davidoff is an American computer programmer who was one of the first employees of Microsoft.
couch: a long piece of furniture like a bed, especially in a doctor’s office
rug: a piece of thick material like a small carpet that is used for covering or decorating part of a floor
Traf-O-Data was a business partnership founded in 1972 by Bill Gates, Paul Allen, and Paul Gilbert. The company aimed to read raw data from roadway traffic counters and process it into usable reports for traffic engineers.
reams: reams [plural] (informal) a large quantity of writing
dividend: an amount of the profits that a company pays to people who own shares in the company
realm: an area of activity, interest or knowledge
exclusive: only to be used by one particular person or group; only given to one particular person or group
royalty: a sum of money that is paid to somebody who has written a book, piece of music, etc. each time that it is sold or performed
cap at: set as the upper limit
sublicense: a license granted to a third party by a licensee, extending some rights or privileges that the licensee enjoys
viable: feasible; that can be done; that will be successful
ruminate: to think deeply about something
confide: to tell somebody secrets and personal information that you do not want other people to know
goof around: (especially North American English, informal) to spend your time doing silly or stupid things
Bill Gates "Source Code"
Online Dictionaries Used:
hk.dictionary.search.yahoo.com
www.oxfordlearnersdictionaries.com
Google AI Overview
en.wikipedia.org
A photography histogram is a graphical representation of an image's tonal values. It displays how pixels are distributed across brightness levels, from pure black on the far left to pure white on the far right. It is an essential tool for evaluating exposure and preventing overexposure or underexposure.
How to Read the Histogram
The horizontal axis (x-axis) represents the brightness of pixels, while the vertical axis (y-axis) represents the number of pixels at that specific brightness.
Left Side (Shadows): Represents pure blacks and dark tones. A spike here means you have dark shadows, but if the graph hits a wall on the far left, you are "crushing" the blacks and losing shadow details.
Middle (Midtones): Represents the middle grays and average light levels in your scene.
Right Side (Highlights): Represents pure whites and bright areas. If the graph hits the right-side wall, you are "clipping" or "blowing out" your highlights (e.g., turning a bright sky into a solid, unrecoverable white).
Common Histogram Shapes
Different types of scenes produce distinct histogram profiles:
High-Key Scene: A bright, airy scene (like a snowfield) will have a histogram heavily weighted toward the right.
Low-Key Scene: A dark, moody scene (like a night cityscape) will have the histogram weighted toward the left.
Balanced Scene: A scene with a good mix of light and shadows will have a bell-curve shape, ideally keeping all data contained within the boundaries.
Google AI overview
List comprehensions in Python are a concise way to build new lists by looping through an iterable, applying an expression, and optionally filtering with conditions—all in a single line. They are faster and more readable than traditional for loops for simple transformations.
nums = [1, 2, 3, 4]
squares = [n**2 for n in nums]
print(squares) # [1, 4, 9, 16]
In Python, you can safely use a trailing comma in dictionaries (and other collections like lists, tuples, and sets).
my_dict = {
"x": 10,
"y": 20,
}
'a', 'b') maps to a list of values.'b' → currently ['bear'].
.append('bat') adds 'bat' to that list..append() modifies the list in place (it doesn’t return a new list).'c' exists
if 'c' not in animals: → looks for 'c' in the dictionary keys.'c' is missing, it creates a new entry with an empty list'cat' to the listanimals['c'] is an empty list [].
.append('cat') adds 'cat' to that list.defaultdict is a special type of dictionary from Python’s collections module. It works just like a normal dictionary, but with one big advantage: if you try to access a key that doesn’t exist, it automatically creates it with a default value instead of raising a KeyError.__repr__) of a defaultdict object.< >, Python is showing you the default factory function used to create missing values.
<class 'list'> means: whenever you access a missing key, Python will automatically create a new empty list for it.{} part after the comma is the current contents of the dictionary (empty at the moment).Bill Gates "Source Code"
Online Dictionaries Used:
hk.dictionary.search.yahoo.com
www.oxfordlearnersdictionaries.com
Google AI Overview
In Python, sets and indexes are two different concepts, and they don’t work together the way lists or tuples do.
The error 'set' object is not subscriptable means you tried to access a set element by index, like this:
mySet = {'a', 'b', 'c'}
print(mySet[0]) # ❌ Error
Defined with curly braces {} or the set() constructor.
mySet = set(('a', 'b', 'c'))
('a', 'b', 'c') → This is a tuple containing three elements.
set(('a', 'b', 'c')) → The set() constructor takes that tuple and converts it into a set.
Result: {'a', 'b', 'c'}
Sets automatically remove duplicates (though here there aren’t any).
mySet now holds a set with the elements 'a', 'b', 'c'.
myList = ['a', 'b', 'b', 'c', 'c'] myList = list(set(myList)) print(myList)
['a', 'b', 'b', 'c', 'c'] → a list with duplicates.
set(myList) → converts the list into a set, automatically removing duplicate
list(set(myList)) → converts the set back into a list
Output: ['a', 'b', 'c']
But the order may vary, e.g. ['b', 'c', 'a'].
mySet.add('d') inserts the element 'd' into the set.
If 'd' was already inside, nothing changes (sets don’t allow duplicates).
while len(mySet):
print(mySet.pop())
Condition: while len(mySet):
The loop runs as long as the set is not empty (len(mySet) > 0).
Inside the loop:
mySet.pop() removes and returns an arbitrary element from the set.
print() displays that element.
Iteration:
Each loop removes one element until the set becomes empty.
Loop ends when len(mySet) == 0.
The order is not guaranteed because sets are unordered. Running the same code again may give a different sequence.
myList = ['a', 'b', 'c'] print(myList.pop()) # 'c' (last element) print(myList.pop(0)) # 'a' (index 0) print(myList) # ['b']
return 1, 2, 3 → In Python, when you separate values with commas, they are automatically packed into a tuple.return (1, 2, 3)(1, 2, 3).type(returnsMultipleValues()) → This checks the type of the returned object.<class 'tuple'>
a, b, c = returnsMultipleValues()
returnsMultipleValues() returns a tuple (1, 2, 3).Daylight and Cloudy white balance settings differ mainly in color temperature. Daylight is optimized for clear, sunny conditions with direct sunlight, while Cloudy compensates for overcast skies.
overcast: covered with clouds; not bright
Key Differences:
Daylight targets around 5000-5500K, producing neutral tones for bright, overhead sun; it can make cloudy scenes look cooler or bluish.
Cloudy uses 6000-6500K (or higher), adding warmth (yellow/orange tones) to counteract the diffused, cooler light from clouds. It's good for Hong Kong’s cloudy spring weather.
Use Daylight for sunny outdoor shots; switch to Cloudy on overcast days to avoid flat, cold colors.
日光與陰天白平衡設定主要在色溫上有所不同。日光模式適合晴朗、陽光直射的環境,而陰天模式則用來補償多雲天氣。
主要差異:
日光模式:目標色溫約 5000–5500K,在明亮的正午陽光下呈現中性色調;但在陰天場景中可能會顯得偏冷或帶藍色。
陰天模式:使用 6000–6500K(或更高),增加暖色調(黃色/橙色),以抵消雲層散射造成的冷色光。這在香港春季多雲天氣特別適合。
實用建議:晴朗的戶外拍攝使用日光模式;在陰天時切換到陰天模式,避免照片顏色顯得平淡、冷調。
Aperture Priority, ISO 200, 35mm, f/9, 1/200s
Both iPhone 17 and 17 Pro now feature a 120Hz ProMotion display for smooth scrolling. The standard 17 lacks a dedicated zoom lens, relying on a 2x "optical quality" crop from its main sensor. Both have the new Ceramic Shield 2 (3x more scratch-resistant) on the front, but only the Pro model features it on the back as well.
Whether 8GB of RAM is a "disadvantage" depends largely on how long you intend to keep the phone and how heavily you use multitasking features. In the current generation of mobile tech, 8GB is the baseline for modern "Intelligence" features. Apple has optimized its software so that 8GB can handle complex tasks like local image generation and text summarization.
Given that you are currently using an iPhone SE2 with only 60GB used and plan to keep the iPhone 17 for more than three years, here is a breakdown of why 256GB is likely your "sweet spot," while 512GB is a luxury choice. If you use iCloud (even the 50GB or 200GB plans), your local storage needs drop significantly as older photos are offloaded to the cloud.
iPhone 17 256GB: HKD 6,899
iPhone 17 512GB: HKD 8,599
Your current 50GB iCloud plan is only 20% used (~10GB), so no upgrade needed after getting the iPhone 17—it'll comfortably last 3+ years with your 256GB phone choice.
SE2 stays with you (continue using 60GB photos there or factory reset later)
The iPhone 17 series supports 40W wired fast charging with a compatible USB-C charger, reaching 50% battery in about 20 minutes.
STUDIO A (Apple Premium Reseller)
2197D, 2/F tmtplaza Phase 1
Mon - Thu: 11:00am - 08:00pm
Fri - Sun, PH: 12:00pm - 09:00pm
In Python, list slicing lets you extract portions of a list using the syntax:
list[start:stop:step]
start → index where the slice begins (inclusive).
stop → index where the slice ends (exclusive).
step → interval between indices (default is 1).
Start = 1 → begin at index 1 (the second element, which is 20).
Stop = 4 → go up to, but not including, index 4.
So you get elements at indices 1, 2, and 3 → 20, 30, 40.
Python slicing always excludes the stop index. That’s why 50 (at index 4) isn’t included.
print(numbers[::2])
Start = empty → defaults to the beginning of the list (index 0).
Stop = empty → defaults to the end of the list.
Step = 2 → take every second element.
So Python picks indices 0, 2, 4, ... until the end
myList = [1, 2, 3, 4, 5] print(myList[0:6:2])
Start = 0 → begin at index 0 (1).
Stop = 6 → go up to, but not including, index 6.
Step = 2 → take every second element.
Notice that even though you wrote stop = 6, your list only goes up to index 4. Python slicing doesn’t throw an error — it just stops at the end of the list. That’s why you still get [1, 3, 5].
The range() function in Python generates a sequence of integers, starting from a given start (default 0), stopping before a given stop, and incrementing by a given step (default 1). It’s most often used in loops to control iteration.
range(start, stop, step)
start → optional, default 0. First number in the sequence.
stop → required. Sequence ends before this number.
step → optional, default 1. Difference between consecutive numbers.
Range function is immutable.
>>> for i in range(5): ... print(i) ... 0 1 2 3 4 >>>
>>> myList = [1,2,3,4] ... myList.append(5) ... print(myList) ... [1, 2, 3, 4, 5] >>>
In Python, lists have several useful methods for adding and removing elements. Let’s look at insert(), remove(), and pop() side by side:
numbers = [10, 20, 30] numbers.insert(1, 15) # insert 15 at index 1 print(numbers) # [10, 15, 20, 30]
len(myList) is now 0.b = a.copy() → makes a shallow copy of a.
Now b has its own separate list [1,2,3,4,5].
Auto (White Priority): best for indoor fluorescent or mixed light
Shade: adds warmth to counter bluish tones
Cloudy: warmer balance, good for HK’s cloudy spring weather
Tungsten Light: best for indoor with incandescent bulbs
White Fluorescent Light: best for offices, malls in HK
Microsoft Copilot