Python基础语法学习回顾

写在前面

本篇为下面这本书的读书笔记,对应练习可见Gitee地址:
python仓库 欢迎补充指正
Book1封面

4 函数

python3.5一共68个内建函数,简单来讲是安装完就可以使用,是“自带的”。
如print(),input(),len(),int()等

4.1 开始创建函数

几个常见的词:
def(define,定义):定义一个函数
arg(argument,参数):有时还有parameter,二者都是参数的意思,稍有不同
return:返回结果

defreturn是关键字(keyword)

# 定义一个函数
def fahrenheit_converter(C):
    fahrenheit = C * 9 / 5 + 32
    return str(fahrenheit) + '˚F'


C2F = fahrenheit_converter(35)
print(C2F)  # 95.0˚F


# 对函数作出修改
def fahrenheit_converter(C):
    fahrenheit = C * 9 / 5 + 32
    print(str(fahrenheit) + '˚F')


print(fahrenheit_converter(35))

print是一个函数并非关键字

4.2 练习题

  1. 设计一个重量转换器,输入以“g”为单位的数字后返回换算成“kg”的结果
  2. 设计一个求直角三角形斜边长的函数(两条直角边为参数,求最长边)

4.3 传递参数与参数类型

对于在一开始就设定了必要参数的函数来说,打出函数名并向括号中传递参数实现对函数的调用(call),只要把参数放进函数的括号中即可

def fahrenheit_converter(C):
    fahrenheit = C * 9 / 5 + 32
    return str(fahrenheit) + '˚F'

fahrenheit_converter(35)
fahrenheit_converter(15)
fahrenheit_converter(0)
fahrenheit_converter(-3)

实际上传递参数有两种方式:位置参数和关键词参数

def trapezoid_area(base_up, base_down, height):
    return 1 / 2 * (base_up + base_down) * height

print(trapezoid_area(1, 2, 3))  # 4.5(位置参数)
print(trapezoid_area(base_up=1, base_down=2, height=3))  # 4.5(关键词参数)

# trapezoid_area(height=3, base_down=2, base_up=1)  # 关键词参数反序输入并不影响函数正常运作
# trapezoid_area(height=3, base_down=2, 1)  # 错误语法,最后一个位置应该是参数height的位置,但与前面height已经按名称传入的3冲突
# trapezoid_area(base_up=1, base_down=2, 3)  # 参数正序传入,前两个关键词的方式,最后一个以位置参数传入,可正常运行
# trapezoid_area(1, 2, height=3)  # 参数正序传入,前两个以位置方式传入,最后一个以关键字参数传入,可正常运行

# 给一组变量赋值然后调用

5 循环与判断

5.1 逻辑控制与循环

5.1.1 布尔类型:True & False(首字母一定要大写)

使用命令行/终端只为更快展示结果,在IDE返回布尔值仍需使用print函数来实现

1>2  # False
1<2<3  # True
42 != '42'  # True
'Name' == 'name'  # False
'M' in 'Magic'  # True
number = 12  # 没有输出
number is 12  # python3不能这样写

5.1.2 比较运算(Comparison)

比较式成立返回True,不成立返回False
除此之外,还有多条件的比较。先给变量赋值再比较

: abs()表示取绝对值函数

  • 比较运算的一些小问题:

不同类型的对象不能使用“<,>,<=,>=”进行比较,但可用‘==’和‘!=’
浮点数和整数虽是不同类型,但不影响到比较运算
True = 1, False = 0
1 <> 3 其实等价于 1 != 3

5.1.3 成员运算符与身份运算符

in & is

  • in后面是一个集合形态的对象,字符串满足此特性,因此可用in进行测试
  • is 和 is not是表示身份鉴别的布尔运算符,in 和 not in表示归属关系的布尔运算符号
  • python中任何一个对象都要满足身份、类型、值这三点。is用来进行身份对比
# the_Eddie = 'Eddie'
# name = 'Eddie'
# the_Eddie == name
# the_Eddie is name

两个变量一致时经过is对比返回True,在python中任何对象都可判断其布尔值,除了0、None和所有空序列与集合(列表、字典、集合)布尔值为False之外其他都为
True。可使用函数bool()进行判别

5.1.4 布尔运算符 and、or

5.2 条件控制 if …else

# 给函数增加一个重置密码的功能
password_list = ['*#*#', '12345']  # 创建一个列表,存储用户的密码 、初始密码和其他数据(对实际用户数据库的简单模拟)
def account_login():  # 定义函数
    password = input('Password:')  # 获得字符串并存在变量中
    password_correct = password == password_list[-1]  # 当用户输入的密码等于密码列表中最后一个元素时(即用户最新设定的密码)登录成功
    password_reset = password == password_list[0]
    if password_correct:
        print('Login success!')
    elif password_reset:
        new_password = input("Enter a new password:")  
  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值