• python06_函数


    计算字符串长度

    s="abc"

    result=0

    for i in s:

      result+=1

    print(result)

    使用函数

    def count_letters(s):

    """此函数主要用于统计字符串个数"""

      result=0

      for i in s:

        result+=1

      return result #返回结果

    =================

    >>> def count_letters(s):
    ... result=0
    ... for i in s:
    ...    result+=1
    ... return result
    ...
    >>> count_letters("12334")
    5
    >>> count_letters("wdwq13323321")
    12
    >>>

    小练习:写一个函数,能够计算一个列表的数字类型的总和

    ["1",2,3]=5  ["a","b"]=0

    def count_sum_in_list(L):

      if not isinstance(L,list):

        return 0 #return被执行的话,那么函数后面的所有代码都不背执行了

      result=0

      for i in L:

        if isinstance(i,(int,float)):

          result+=i

      return result

    =================


    >>> count_sum_list(10)
    0
    >>> count_sum_list([])
    0
    >>> count_sum_list([1,2,3,"a"])

    函数的内部,一定要判断传入的参数类型是否是期望的类型,想清楚怎么容错,如果是,再继续计算

    没有参数的函数

    >>> def a():
    ...    print("*"*10)
    ...
    >>> a()
    **********

    >>> def a():
    ... for i in range(10):
    ...    print("*"*i)
    ...
    >>> a()

    *
    **
    ***
    ****
    *****
    ******
    *******
    ********
    *********

    import random

    def five_rangdom_letters():

      result=" "

      for i in range(5):

        result+=chr(random.randint(97,122))

      return result

    =======

    import random

    def random_letters(n):

      if not isinstance(n,int):

        return ""

      result=" "

      for i in range(n):

        result+=chr(random.randint(97,122))

      return result

    random_letters(10)

    小练习

    random_letters(n,type) type参数可以是lower 也可以是upper,其他:返回“”

    import random

    def random_letters(n,type):

      if not isinstance(n,int):

        return " "

      result=" "

      if not (type=="lower" or type=="upper"):

        return " "

      result=" "

      for i in range(n):

        if type=="lower":

          result+=chr(random.randint(97,122))

        else:

          result+=chr(random.randint(65,90))

      return result

    random_letter(10,"upper")

    >>> def a():pass
    ...
    >>> print(a)
    <function a at 0x000001AA2F769A60>
    >>> print(a())
    None

    >>> def get_values():
    ...    return 1,2,3,4,5
    ...
    >>> print(get_values)
    <function get_values at 0x000002E1119E1E18>
    >>> print(get_values())
    (1, 2, 3, 4, 5)
    >>> for i in get_values():
    ... print(i)
    ...
    1
    2
    3
    4
    5
    >>>

    >>> def get_values():
    ...    result=[ ]
    ...    for i in range(5):
    ...      result.append(i)
    ...   return result
    ...
    >>> print(get_values())
    [0, 1, 2, 3, 4]
    >>>

    def a():

      x=10

      print(x)

    a()

    >>> x=100
    >>> def a():
    ... x=1
    ... print(x)
    ...
    >>> a()
    1
    >>> x
    100
    >>>

    >>> x=456
    >>> def a():
    ...    global x
    ...    x=123
    ...    return x
    ...
    >>> print(a())
    123
    >>>

        

  • 相关阅读:
    VC6中用DOM遍历网页中的元素
    在ActiveX控件中如何动态调用DLL函数之"准"一体化方法
    利用WM_GETMESSAGE做键盘记录
    Web创业的10条戒律
    CRectTracker(橡皮筋)类的使用
    商业计算中Java高精度计算BigDecimal类
    Web常用Filter
    字符串操作
    角度和弧度
    io 文件操作
  • 原文地址:https://www.cnblogs.com/JacquelineQA/p/14091253.html
Copyright © 2020-2023  润新知