zoukankan      html  css  js  c++  java
  • Python基础学习参考(三):内置函数

    一:内置函数

    在第一篇文章中,我们简单的认识了一下print()函数和input()函数,也就是输入和输出,这些函数我们可以直接的调用,不要自己定义或者引入什么,对吧?想这样的函数就叫做内置函数。这里有两个问题?第一个什么是函数,另一个内置函数有哪些?
    首先,什么是函数呢?函数我们也可以称作方法,具体一点呢,就是能够实现某些功能。比如print函数,就能实现输出啊。函数其实还是很复杂的,我们一点点来接受和消化它,目前先简单的了解这些。再说一下在python3中内置函数有哪些?感受一下:

    abs() dict() help() min() setattr()
    all() dir() hex() next() slice()
    any() divmod() id() object() sorted()
    ascii() enumerate() input() oct() staticmethod()
    bin() eval() int() open() str()
    bool() exec() isinstance() ord() sum()
    bytearray() filter() issubclass() pow() super()
    bytes() float() iter() print() tuple()
    callable() format() len() property() type()
    chr() frozenset() list() range() vars()
    classmethod() getattr() locals() repr() zip()
    compile() globals() map() reversed() __import__()
    complex() hasattr() max() round() delattr()
    hash() memoryview() set()

    好了,python3中就这么多,这里面的方法我们只需要会其中一部分就可以了,其他的当有使用场景的时候我们再去学习就可以了。
    目前,只需要知道如下几个内置函数:

    1.help()

    这个方法就是用来帮助开发者去学习其他方法(其实不局限与方法)是如何使用的。怎么使用呢看下面例子:

    help(print)
    只需要把方法的名字放到help中(其实是作为参数传进去),再看一下输出结果:


    英文好的同学应该可以看明白吧,分别解释了print中需要传入的参数及解释。这就是help的简单用法,同学们自己运行其他的内置方法试一试。

    2. print()

    既然通过上面的例子和之前第一篇的学习是不是大概知道print的使用了,通过上面的例子的结果可以知道,print默认拼接字符串时候加一个空格,当结束的时候会换行,字符串之间要想拼接需要通过“,”逗号分隔,等等。当然也可以去更改默认选项,比如:

    print('print的使用','方法',sep='|',end="@@")
    大家可以猜下运行结果,之后自己在运行一下,看下结果就会明白的,结果如下:


    是不是在两个字符串中间加了个“|”,在结尾加了两个“@”,print其他参数和用法遇到了在介绍。例子中我们用print打印的是字符串,其实print可以打印其他数据类型,同学们自己试一下。我想再重点说明的不是print的用法,而是print输出字符串的其他常用方式。
    第一种:像上面的那样输出字符串
    第二种:在实际开发中字符串内容比较复杂的情况,我们可以通过%来解决比如:

    name,age,sex = "小明",12,""
    print("%s,今年%d岁,性别%s" %(name,age,sex))

    这个时候我们只要修改上面name,age和sex变量就可以打印出不一样的结果了。看下结果:


    其中%s,%d都是什么,表示什么意思,如下:

    • s,获取传入对象的str方法的返回值,并将其格式化到指定位置
    • r,获取传入对象的repr方法的返回值,并将其格式化到指定位置
    • c,整数:将数字转换成其unicode对应的值,10进制范围为 0 <= i<= 1114111(py27则只支持0-255);字符:将字符添加到指定位置
    • o,将整数转换成八 进制表示,并将其格式化到指定位置
    • x,将整数转换成十六进制表示,并将其格式化到指定位置
    • d,将整数、浮点数转换成十进制表示,并将其格式化到指定位置
    • e,将整数、浮点数转换成科学计数法,并将其格式化到指定位置(小写e)
    • E,将整数、浮点数转换成科学计数法,并将其格式化到指定位置(大写E)
    • f,将整数、浮点数转换成浮点数表示,并将其格式化到指定位置(默认保留小数点后6位)
    • F,同上
    • g,自动调整将整数、浮点数转换成浮点型或科学计数法表示(超过6位数用科学计数法),并将其格式化到指定位置(如果是科学计数则是e;)
    • G,自动调整将整数、浮点数转换成浮点型或科学计数法表示(超过6位数用科学计数法),并将其格式化到指定位置(如果是科学计数则是E;)
    • %,当字符串中存在格式化标志时,需要用 %%表示一个百分号
      可能没有基础的同学不明白什么意思,%加个字母,其实就是一个占位符,表示这个位置我占据了但是要放置什么类型数据,通过后面每个字母表示的决定,比如%s表示这个位置放字符串,%d这个位置放十进制的数字等等。需要注意的是。前面有对少个占位符,后面的%()里面就应该放置多少个对应的变量。
      第三种:通过format的方式,先来个例子:
      name,age,sex = "小明",12,""
      print("{name},今年{age}岁,性别{sex}".format(name=name,age=age,sex=sex))
      运行的结果:


    是不是和第二种方法是一样的,只是利用了字符串的format方法,只要把前后对应起来就可以,它有一个好处就是,顺序其实是可以改变的,因为前后是通过具体的“名字”对应的。Print方法先说这些。

    3.input()

    input方法很简单就是获取用户输入的内容,运行如下语句:

    x = input("input something:")
    print(type(x))
    之后,我们输入一个5,看结果:


    说明我们得到的x数据类型其实字符串类型的,对的,input获取的全都是字符串跟你输入什么数据内容无关(先这么理解)。有些同学想得到用户输入的类型为其他类型(非字符串)怎么办?这就涉及到数据类型的转换了,但是看内置函数的表中,是不是有int(),str()float()等等一些方法啊。往下看。 

    4.int()

    这些方法使用是不是很简单,比如想把上面例子中的x变为int怎么办?

    y = int(x)
    print(type(y))
    看输出结果是不是,说明转为int了吧!其他方法,比如str(),float()大家可以自己试一下。需要说明的是有些数据不能强转,如果强行转换会报错,比如int(“你”)像这样肯定会报错的。先了解这么多。

    5.range()

    python中range的使用是比较频繁的,在python2中range方法生成一个list(不了解可以pass)然而在python3中range方法返回的是一个迭代器,什么是迭代器,就是一个可以用来迭代的东东。由于可以迭代,多数情况都是根for循环一起使用的,举个列子:

    for i in range(5):
        print(i)

    代码中,for循环就是用来遍历出range()函数所生成的内容,之后打印出来,换句话说就是把range函数所表示的内容print出来,运行代码可以得到如下图结果:


    其实就0到4,大家可以自己试一下。上面代码改写成如下形式:

    for i in range(0, 5):
        print(i)

    运行后得到的结果根上面是一样的。如果再改写一下,如下形式:

    for i in range(1, 5):
        print(i)

    得到的结果是1到4,这时候range函数的两种用法是不是显而易见了。第一种方式,只传递一个参数,得到的是一个从0开始计数(计算机都是从0开始计数的),一直到参数所表示的个数(不太懂看下上面例子或者range(6),range(10)等试一下)。第二种方式是传递两个参数,以第一个参数开始计数(包含第一个参数)一直到第二个参数结束(不包含第二个参数)。第一种方式其实就是第二种方式的简写,都是从0开始的,把开始的0这个参数忽略了。其实range函数还可以传递三个参数,代码如下:

    for i in range(1, 10, 2):
        print(i)

    得到的结果是:1,3,5,7,9。与之前的不同就是每个数字从第一个开始不是连续的,而是每次加2,其实第三个参数就是步长,之前我们都没加第三个参数其实默认是1,现在改为2了,就出现上面的结果了,大家可以试着将2改为3等等,可以验证一下,我就不再过多的介绍了。
    内置方法目前就学习这么多,以后还有遇到其他的内置方法,遇到了以后再来学习。特别说明一下,上面这些方法是从python官网(docs.python.org/3.6/library… 上load下来的,里面有所有的内置方法的教程,但是是英文的,大家可以自己的去了解和学习一些自己感兴趣的内置方法。


    二.函数参数


    上面多次提到参数问题,针对没有基础的同学多啰嗦几句,函数参数分为实参和形参,什么是实参,就是实际参数,比如上面range(5)中的5这个参数就是实参,是一个已经确定的参数。什么是形参,其实就是形式参数,比如看range方法的文档range(stop)其中的stop就是形参,因为stop这个参数有多种可能性,具体是什么要看使用者给他传什么,stop参数只是表示一个形式而已。
    上面我们一直学习python自带的内置函数,我们可不可以自己定义一个函数呢?通过def关键字,例子如下:

    def say(n):
        print(n)

    这里我们就定义了一个名字是say的函数,他里面就有一个形参n,这个函数怎么使用呢?跟其他函数一样直接调用就可以了:

    say('hello')

    这里面的‘hello’就是实参了。运行结果如下:


    如何定义一个函数,后面还会深入讲解,随着学习一点点深入,每天学习一点点,生活美好一点点。

    福利:关注微信公众号,回复 python书,可获得目前python学习的一些认可度比较高的电子书

    Tips:上面涉及到的代码。初学者一定要认认真真的自己敲一下,所有的运行的结果我也都在文章中给出来了,千万不要眼高手低。初学者大忌,很多时候自己实现的结果和想象的是不一样的。

    特此说明:作者的内容均为原创,转载表明出处。由于本人的能力水平有限,如有发现错误和纰漏请联系作者,拜谢!
    如果软件安装使用python等内容还有写不明白的同学可以加入qq群:476581018交流,或者关注微信公众号(快扫下图(●’◡’●))系列文章会在公众号最新发布,并且有很多福利等你哦!

  • 相关阅读:
    Silverlight 4.0添加鼠标右键菜单和Silverlight全屏模式的进入退出
    获取天气服务
    Silverlight 数据绑定 (1):怎样实现数据绑定 &&Silverlight 数据绑定 (2):Source to Target
    调用根据IP查看城市WebService
    Silverlight中的Binding使用(一、二、三)
    使用Prism实现的WPF MVVM点餐Demo
    [Silverlight入门系列]实现局部元素全屏(Element部分全屏)
    silverlight 上下标
    动画教程(动态注册/静态注册)
    Silverlight数据验证
  • 原文地址:https://www.cnblogs.com/leo666666/p/7792766.html
Copyright © 2011-2022 走看看