函数学习备忘

2018-05-15  本文已影响10人  _大_兵_
import random # 导入random模块
def get_answer(answer_number):
"""根据值返回对应的字符串"""
    if answer_number == 1:
        return 'It is certain'
    elif answer_number == 2:
        return 'It is decidedly so'
    elif answer_number == 3:
        return 'yes'
    elif answer_number == 4:
        return 'Reply hazy try again'

r = random.randint(1,4) #使用randint()返回随机数
print(get_answer(r))
>>> spam = print('Hello')
Hello
>>> None = spam
True

在没有return语句的函数定义,Python会自动在末尾加上return None

print('Hello')
print('world')
输出:
Hello
world
# print()函数自动在字符串末尾添加了换行符。

print('Hello',end='')
print('world')
输出:
Helloworld
# 设置end关键字参数,打印一个空字符串,不再换行。

print('cats','dogs','mice')
输出
cats dogs mice
# 打印多个字符串值,自动用一个空格分割。

print('cats','dogs','mice',sep=',')
输出
cats,dogs,mice
# 使用,分割字符串
def spam():
    global eggs
    eggs = 'spam' # 全局变量

def bacon():
    eggs = 'bacon' #局部变量

def ham():
    print(eggs) # 全局变量

spam()
print(eggs)
输出
spam

在函数中,局部变量没有赋值之前使用它,报UnboundLocalError错误

def spam(divibe_by):
    try:
        return 42 / divibe_by
    except ZeroDivisionError:
        print('Error:Incalid argument')
上一篇 下一篇

猜你喜欢

热点阅读