学习笔记_python_python编程从入门到实践3.0

八、函数

定义函数

def xxx_xxx():      #此处冒号不能漏

    """此处可以添加备注,之后为代码"""


实参和形参

形参——函数完成工作所需的一项信息

实参——实际调用给形参的信息

(类似函数f(x)=y?)


函数可多次调用,同时实参的顺序很重要,理解代码逻辑

返回值,给用户提供信息

返回字典

结合使用函数和while循环

#while千万不要码成了whlie

#示例代码

#结合弹出循环的greeter
def get_formatted_name(first_name,last_name):
    """返回整洁的姓名"""
    full_name=first_name + ' ' + last_name
    return full_name.title()

while True:
    print("\nPlease tell me your name:")
    print("(enter'q' at any time to quit)")
    f_name=input("First_name:")
    if f_name=='q':
        break
    l_name=input("Last name:")
    if l_name=='q':
        break
    formatted_name = get_formatted_name(f_name,l_name)
    print("Hello," + formatted_name + "!")


传递任意数量的实参



将函数储存在模块中

导入模块、函数、所有函数

import


函数编写指南

pep8 建议代码长度不超过79字符,如超过按回车后注意增加缩进,将形参列表和函数主体区分

#代码示例

def function_name(

                x_1,x_2,x_3,

                x_4,x_5,x_6,):

        function body......




九、类

根据类来创建对象被称为实例化,这让你能够使用类的实例

创建Dog类

这个类包含sit()和roll_over()的能力

#代码示例

class Dog():
    """一次模拟小狗的简单尝试"""
    def __init__(self,name,age):     #此处def __init__()def后有空格!!__为双下划线,一定一定要注意!
        """初始化属性name和age"""
        self.name=name
        self.age=age
    def sit(self):
        """模拟小狗被命令时蹲下"""
        print(self.name.title() + " is now sitting.")
    def roll_over(self):
        """模拟小狗被命令打滚"""
        print(self.name.title()+" rolled over!")
  
  
  my_dog=Dog('willie',6)
  
  print("My dog's name is " + my_dog.name.title() + ".")
  print("My dog is " + str(my_dog.age) + " years old.")

调用方法

XXX.xx

 my_dog.sit()

则python反馈

Willie is now sitting.


继承

编写现成类的特殊版本

原有类称为父类,新类成为子类

__init__()


修改子类父类

导入类

from xx import XXX



类编码风格

驼峰命名法:类名中的每个单词首字母大写,不使用下划线,实例名和模块名都采用小写格式,并且在单词之间加上下划线

类Car

实例和模块my_car


python提供了很多选项,熟悉这些选项,对以后组织大型项目的代码开发上面将大有益处,确定正确的开发项目,同时明白和理解别人开发的项目。


python标准库

python预先还有的模块,安装的python都包含它


十、文件和异常

读取文件

file_path='C:\pythonwork\dog.txt'

with open(file_path) as file_object:

#本人使用的是window 10 64位

逐行读取

for line in file_object:

        print(xxx.rstrip())

写入文件

file_object.write("I love programming.")


异常

使用try来给用户一个友好的错误消息

try:

        xxxx

    XXX

        print("plaaaaa")

xxxx可执行代码

XXX报错的Traceback类型

凭借经验可以判断用户会在什么地方出错,可及时向用户提供出错信息甚至在编写时便解决错误


储存数据

json.dump()

json.load()


重构

对加载的类或函数进行重写



十一、测试代码

测试函数

test_xxx_xxxx()

测试类

unittest.TestCase

各种断言方法

assertXxxx(x,x)

测试

AnonymousSurvey


方法setUp()


多编写测试一方面能测试你的代码,据说还能增加别的程序员对你的好感,使他们更愿意与你共事,相信你的能力。


part one 结束

接下来书进入part two  实际的项目开发层面














  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值