Simple function
1
2
3
4
5
6
| def greeting(name): # order matters, define first
print("Hello", name)
#main program
input_name = input("Enter your name:\n")
greeting(input_name)
|
Scope
The input_name is a global var and has global scope,
1
2
3
| # name is not defined - cause it's defined and only avaible in the func
# print("Thanks", name)
print("Thanks", input_name) # input_name is defined outside of func
|
This greeting_global function uses a global var
1
2
3
4
| def greeting_global(): # define func without var
print("Hello again", input_name) # refer to a global var
greeting_global()
|
Return and main func to orginzing
1
2
3
4
5
6
7
8
| def greeting_return():
return "Retruned? Hello, " + input_name # Return a value instead
def main(): # main func to orgnize the code
retruned = greeting_return()
print(retruned)
main()
|
Examle
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
| import random
def roll_dice():
dice_total = random.randint(1,6) + random.randint(1,6) # maybe 1,12 is ok too
return dice_total
#main program
def main():
player1 = input("Enter player 1 name:\n")
player2 = input("Enter player 2 name:\n")
roll1= roll_dice()
roll2= roll_dice()
print(player1, " rolled", roll1)
print(player2, " rolled", roll2)
if roll1 > roll2:
print(player1, 'wins')
elif roll1 < roll2:
print(player2, 'wins')
else:
print('tie')
main()
|
organize Weather program
Reference