1、字典的特性:无序、去重、查询速度快、比list占用内存多。

2、字典查询速度快的原因:因为他是哈希类型的。

3、什么是(hash)哈希?

hash把任意长度的二进制映射为较短的固定长度的二进制,这个较短的二进制值称为哈希值。哈希值是一段数据唯一    且紧凑的数值表现形式。一段明文只有在同一个进程下生成的哈希值才会相同,不同的进程下同一段明文生成的哈希值也不同。

4、字符编码:

python2 下的编码:

  • python2 默认编码是ascii码
  • 文件开头的编码声明是为了告诉这个代码的程序用什么编码格式把这段代码读入到内存中。
  • 存在 #_*_ coding:utf-8_*_ 的情况下,在声明变量中写username=u"姓名",则该字符位unicode格式,不加u则为utf-8 格式。
  • utf-8 转 gbk,utf8先decode成unicode,再encode成gbk 。

    python3 下的编码:

  • python3的编码格式:

    l Python 3 里默认文件编码格式为utf-8,所有可以直接输入中文。

    l 声明的变量默认是unicode编码,如果想要转为gbk,直接写your_str.encode.

    二、函数的基本语法及特性

    l 函数的定义:函数是指将一组语句的集合通过一个名字(函数)封装起来,要想执行这个函数,只需调用其函数名即可。

    l 函数的特性:

    1、 减少重复代码

    2、 视程序变的可扩展

    3、 使程序变的易维护

    l 语法定义:

    def sayhi():    #函数名

    print (“hello world!”)

    sayhi()       # 调用函数

    例子

    def cala(x,y):

    res = x**y

    return res    # 返回函数执行结果

    c = calc(a,b)     # 结果赋值给c变量

    print(c)

    三、函数参数与局部变量

    1、 形参变量:只有在被调用时才分配内存单元,在调用结束后即刻释放所分配的内存单元。因此,形参只在函数内部有效。函数调用结束返回主调用函数后则不能再使用该形参变量。

    2、 实参:可以是变量、常量、表达式、函数等,无论实参是何种类型的量,在进行函数调用时,他们都必须有确定的值以便把这些值传送给形参。因此应预先用复制,输入等方法使参数获得确定值。

    3、 默认参数:

    def stu_reg(name,age,course,country="CN"):

    print("-----------注册学生信息-----------")

    print("姓名:",name)

    print("年龄:",age)

    print("课程:",course)

    print("国籍",country)

    stu_reg("张三","18","数学")

    stu_reg("李四","18","数学")

    其中 “country”即为默认参数,参数在调用时不指定,那默认就是CN,指定了的话,就用你指定的值。

    4、 关键参数:不想按顺序传递参数时,可以使用关键参数,只需指定参数名即可。但是,关键参数必须放在未知参数之后。

    5、 非固定参数 :用户不确定需要传入多少个参数时,可以使用非固定参数。

    例:

python学习第四天第一部分的更多相关文章

  1. python学习第四次笔记

    python学习第四次记录 列表list 列表可以存储不同数据类型,而且可以存储大量数据,python的限制是 536870912 个元素,64位python的限制是 1152921504606846 ...

  2. python学习第四讲,python基础语法之判断语句,循环语句

    目录 python学习第四讲,python基础语法之判断语句,选择语句,循环语句 一丶判断语句 if 1.if 语法 2. if else 语法 3. if 进阶 if elif else 二丶运算符 ...

  3. Python学习(四)数据结构(概要)

    Python 数据结构 本章介绍 Python 主要的 built-type(内建数据类型),包括如下: Numeric types          int float Text Sequence ...

  4. python学习-第四天补充-面向对象

    python学习-第四天补充-面向对象 python 私有 --name mangling(名字修改.名字) 在命名时,通过使用两个下划线作为开头,可以使得这个变量或者函数编程私有的,但是这个其实的p ...

  5. python学习第四十八天json模块与pickle模块差异

    在开发过程中,字符串和python数据类型进行转换,下面比较python学习第四十八天json模块与pickle模块差异. json 的优点和缺点 优点  跨语言,体积小 缺点 只能支持 int st ...

  6. Python学习之路【第一篇】-Python简介和基础入门

    1.Python简介 1.1 Python是什么 相信混迹IT界的很多朋友都知道,Python是近年来最火的一个热点,没有之一.从性质上来讲它和我们熟知的C.java.php等没有什么本质的区别,也是 ...

  7. Python学习(四)cPickle的用法

    python中有两个类似的:pickle与cPickle:两者的关系:“cPickle – A faster pickle” pickle模块中的两个主要函数是dump()和load().dump() ...

  8. Python学习笔记四

    一.装饰器 1.知识储备 函数对象 函数可以被引用 函数可以当参数传递 返回值可以是函数 可以当作容器的元素 def func1(): print (666) def func2(): print ( ...

  9. python学习第四天笔记整理

    一.迭代器及生成器 #迭代器:迭代的工具 #1 什么是迭代:指的是一个重复的过程,每一次重复称为一次迭代,并且每一次重复的结果是下一次重复的初始值# while True:# print('===== ...

随机推荐

  1. TQ210开发板NFS挂载android4.0.4的rootfs的方法

    首先声明的是,我使用的u-boot是自己移植的u-boot2013.01.01而非天嵌官方的那个,至于使用官方的u-boot如何去实现nfs挂载rootfs我没怎么研究过,不过原理方法都是一致的. 主 ...

  2. 【原创】C++链表如何像Python List一样支持多种数据类型

    用过Python的码友都知道,Python中List支持多种数据类型,如下面代码所示链表li内的数据类型可以是整数,同时也可以是字符串,当然也可以是其他数据类型. 1: >>> li ...

  3. oracle PL/SQL(procedure language/SQL)程序设计(续集)之PL/SQL函数

    PL/SQL函数 examples:“ 构造一个邮件地址 v_mailing_address := v_name||CHR(10)||                                 ...

  4. ilter()和find()的区别

    这是jQuery里常用的2个方法.他们2者功能是完全不同的,而初学者往往会被误导. 首先 我们看.find()方法:现在有一个页面,里面HTML代码为;程序代码 <div class=" ...

  5. Windows重新建立图标缓存

    有的时候,快捷方式的图标会因各种优化软件而变得面目全非,这时就需要重新建立图标缓存 新建一个文本文档,把文件的后缀名修改成.bat 的例如 icon.bat 在里面填写下面的内容: rem 关闭exp ...

  6. xcode报错 has been modified since the precompiled header was built

    删除/Users/username/Library/Developer/Xcode/DerivedData/ModuleCache 下的所有文件

  7. html+css--水平居中总结(不定宽块状元素方法)(一)

    来源:http://www.imooc.com/code/6363 在实际工作中我们会遇到需要为“不定宽度的块状元素”设置居中,比如网页上的分页导航,因为分页的数量是不确定的,所以我们不能通过设置宽度 ...

  8. Part 15 Scalar user defined functions in sql server

    Scalar user defined functions in sql server Inline table valued functions in sql server Multi statem ...

  9. RedHat Install

    1. 插入光盘1并从光盘启动加载镜像文件 2. 回车后进入安装流程 3. 选择语言 4. 选择键盘布局 5. 鼠标配置 6. 选择安装类型 7. 选择分区类型 8. 添加一个boot分区 9. 新建一 ...

  10. highcharts 图表库的简单使用

    Highcharts简介: Highcharts是一款纯javascript编写的图表库,能够很简单便捷的在Web网站或Web应用中添加交互性的图表,Highcharts目前支持直线图.曲线图.面积图 ...