Python笔记--day8

昨天,亲手做了个学籍注册小程序,花了很长时间,当然一开始还不太熟悉,慢慢来,今天继续函数的学习。

  1. 形参和实参
def calc(x, y):  # 形参-->只在函数内部有效
    ret = x ** y
    print(ret)


a = 5
b = 2

calc(a, b)  # 实参

这个知道就可以,就是个定义,会用就行。

2.默认参数(及默认参数更改):


def stu_register(name, age, course, country="CN"):   # 默认参数,放在后面
    print("-------学籍信息注册-------")
    print("姓名: ", name)
    print("年龄: ", age)
    print("国籍: ", country)
    print("课程: ", course)


stu_register("老王", 23, "C语言")
stu_register("小李", 22, "JAVA", country="AM")  # 默认参数更改
stu_register("王哥", 26, "数据库", "AU")    # 默认参数更改
stu_register("张三", 21, "数据结构")

3.非固定参数:


# 非固定参数
# *args: 会把多传入的参数变成一个元组形式  **kwargs  变成字典
def stu_register(name, age, *args, **kwargs):
    print(name, age, args, kwargs)

    print(kwargs.get("addr"))  # 取


# stu_register("DaoNan", 22)
stu_register("Tom", 22, "Man", "C语言", addr="山东", hometown="德州")

  1. 函数返回值:
def stu_register(name, age, course, country="CN"):
    print("-------学籍信息注册-------")
    print("姓名: ", name)
    print("年龄: ", age)
    print("国籍: ", country)
    print("课程: ", course)
    if age < 24:
        return True, age, course, country
    else:
        return False    # 程序一旦遇到return,就代表着函数的结束


register_info = stu_register("王哥", 23, "数据库", "AU")
print(register_info)
if register_info:
    print("注册成功")
else:
    print("年龄太大,不适合")

5.全局变量和局部变量


name = "DaoNan"  # 全局变量 :作用整个程序


# 局部与全局同名时,在函数内局部起作用,在其他地方全局起作用
def change_name():
    #  global name  # 声明全局变量,不建议用,因为默认函数内不能修改全局变量
    name = "隔壁老王"  # 局部变量:只在函数内部有效
    print("改变后:", name)


change_name()
print("有变化吗?", name)

6.给函数传递列表list的现象:

d = {"name": "DaoNan", "age": 26, "hobbies": "足球"}
l = ["老王", "小磊", "小哥"]


def change_data(info, man):
    info["hobbies"] = "篮球"
    man.append("王哥")


change_data(d, l)
print(d, l)

7.一些常用内置函数(要知道有这个函数,会用):

# abs 取绝对值
 print(abs(-10))

# all 全部
a = [1, 2, 3, 4, 5, 6]
print(all(a))

# any 任意一个值为True
a = [1, 2, 3, 4, 5, 6]
print(any(a))

print(chr(122))  # 打印ASCII码值

# dict

print(dict())  # 生成空字典
print(dict(name="DaoNan"))
dir 打印当前程序的所有变量名
name = "DaoNan"
age = 22
print(__file__)
print(dir())


# 打印当前作用域的所有变量名 和 变量值
name = "DaoNan"
age = 22
print(locals())


l = list(range(10))
print(l)


def calc(x):  # 只能定义一个参数
    return x ** 2


m = map(calc, l)  # 并未执行(迭代器)
for i in m:  # 每循环一次,就把列表里的每一个元素扔给calc函数执行
    print(i)


# max  最大值
l = list(range(10))
print(max(l))


# min
l = list(range(10))
print(min(l))

# sum
print(sum(l))


# ord 打印ASCII 值
print(ord("z"))


# round 保留小数
print(round(3.1415926, 2))


#zip 一一配对

a = ["haha", "daddr", "jijiji"]
b = ["AAA", "DDDD", "NNNN"]

for i in zip(a, b):
    print(i)

# filter 把列表里的每一个元素交给第一个参数(函数)运行,若结果为真,则保留这个值
l = list(range(10))


def compare(x):
    if x > 5:
        return x


print(l)
for i in filter(compare, l):
    print(i)

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Python中,异常处理是非常重要的一部分。当程序运行时如果出现错误,如果没有异常处理,程序就会崩溃。为了避免这种情况,Python提供了异常处理机制。 在Python中,异常处理语句使用 `try` 和 `except` 关键字来实现。`try` 语句块中包含可能会发生异常的代码,如果这段代码出现了异常,则会跳转到 `except` 语句块中执行异常处理代码。 下面是一个简单的例子: ```python try: num = int(input("请输入一个整数:")) print(10/num) except ZeroDivisionError: print("除数不能为0") except ValueError: print("输入的不是整数") ``` 在上面的代码中,我们尝试将用户输入的字符串转换为整数,并将其用作除数计算 10/num。如果用户输入的是 0,则会触发 ZeroDivisionError 异常。如果用户输入的不是整数,则会触发 ValueError 异常。如果发生异常,则会跳转到对应的 except 语句块中执行处理代码。 除了可以指定具体的异常类型,也可以使用 `except Exception` 来捕获所有异常。例如: ```python try: num = int(input("请输入一个整数:")) print(10/num) except Exception as e: print("发生异常:", e) ``` 在上面的代码中,如果发生任何异常,都会跳转到 `except` 语句块中执行处理代码,并将异常信息打印出来。 除了 `try` 和 `except`,还有 `finally` 关键字,它指定的代码块无论是否发生异常都会执行。例如: ```python try: num = int(input("请输入一个整数:")) print(10/num) except Exception as e: print("发生异常:", e) finally: print("程序执行完毕") ``` 在上面的代码中,无论是否发生异常,都会执行 `finally` 中的代码,即输出“程序执行完毕”。 总之,在Python中,异常处理是非常重要的一部分,它可以有效避免程序崩溃,提高程序的健壮性和可靠性。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值