zoukankan      html  css  js  c++  java
  • python函数(一)

    1.函数也称为方法、功能

    2.函数的作用: 1、提高代码的复用性     2、让代码更简洁、简化代码    必填参数、默认值参数

    3.例子

    def say(): #函数名  定义函数

          print('hello')#函数体

    #函数不调用是不会被执行的

    say()  #调用函数

    4.函数的参数

    def calc(a,b):  #形参, 形式参数

          #位置参数,必填参数

          res = a * b

          print('%s * %s = %s'%(a,b,res))

    # calc(7,8)  #实参,实际参数

    def op_file(file_name,conent=None):  #

          #默认值参数,它是非必填的

          f = open(file_name,'a+',encoding='utf-8')

          f.seek(0)

          if conent:#不为空代表写

               f.write(conent)

               f.flush()

          else:

               all_users = f.read()

               return all_users  #调用完函数之后,返回什么结果

          f.close()       #局部变量   函数里面定义的变量,都是局部变量,只能在函数里面用,出了函数之后就不能用了。

    #return

            1、把函数处理的结果返回回来

            2、结束函数,函数里面遇到return,函数会立即结束

    # res = op_file('a.txt')

    # print(res)

    def haha():

          #函数里面遇到return函数就立即结束

          for i in range(5):

               print(i)

               if i==3:

                     return  #只写一个return的话,就返回None

    res = haha()

    print(res)

    import string

    def check(pwd):

          #长度6-11

          #字母和数字吧

          if len(pwd)>5 and len(pwd)<12:

               if set(pwd) & set(string.ascii_letters) and set(pwd) & set(string.digits):  #使用&取交集

                     print('密码合法')

               else:

                     print('密码不合法')

          else:

               print('密码不合法')

    res = check('asd1234')  #函数里面如果没有return的话,默认返回None  res存放返回结果

    print(res)

    l = [1,6,8,2,4,8,9]

    print(l.sort())

    print(l)   #return不是必须的  需要结果才写

    判断小数的函数

    def is_float(s):

          s = str(s)  #以下方法是字符串方法 所以先要转为字符串。

          if s.count('.')==1:#小数点个数

               s_list = s.split('.')    #分割完是个list

               left = s_list[0]  #小数点左边

               right = s_list[1] #小数点右边

               if left.isdigit() and right.isdigit():  #正小数

                     return True

               elif left.startswith('-') and left.count('-')==1 and

                          left.split('-')[1].isdigit() and     #符号分割第一个是空  所以去【1】

                          right.isdigit():  #判断合法负小数

                          return True

          return False  # -.1 是运算的,需要加‘’才可以

     实例检查 及分析

    # 1.98

    # -2.50

    # retrun True

    # retrun False

    # 1.98

    # 1.98.23

    # -1.90

    #  需求分析:

          #1、 小数点个数  .count()

          # 2、按照小数点进行分割  1.98  [1,98] s.87  98.s1

          #3、正小数:小数点左边是整数 右边也是整数 .isdigits()

          #   负小数:小数点左边是以负号开头,但是只有一个负号,右边也是整数  -9.85

    money = 500

    def test(consume): # 500

          return money - consume

    def test1(money):

          return test(money) + money

    money = test1(money)

    print(money)

    #常量

            #一个不变的值

        #如果你写了一样功能,那你就要想是不是能把这个功能封装成一个函数  用大写字母定义的变量

    #全局变量

            公共的变量,都可以用的变量。

            1、不安全,因为所有人都可以改

            2、全局变量它会一直占着内存

    name = '谢红'

    *如果要改全局变量的话,那你要先声明一下,你修改值是全局变量

    def sayName():

      global name

      name = '刘伟'

      print('name1',name)

    def lw():

      age = 28

      return age

    def setName():

      global name

      name = '摸手哥'

     sayName()

     setName()

     print('name2',name)

    #数据库链接  (两种调用方式)

    def op_mysql(host,port,username,password,db,charset,sql):

      print('连接数据库')

    op_mysql(

      '192.168.1.1',

      3306,'root','123456','jxz','utf-8','select')   #元素意义对应

    op_mysql(           #根据指定的形参 入参,不用按顺序一一对应

      '192.168.1.1',

      db='sfsdf',

      charset='sdfsdf',

      sql='select * from user;'

             )

    # op_mysql(sql='select * from user;',

    #            host='192.158.11.1',

    #            username='sdfdsfs',

    #            password='sdf',

    #            db='sdfsdf',

    #            charset='sdfsdf',

    #            port='xx'

    #            )

  • 相关阅读:
    HDU 5313 bitset优化背包
    bzoj 2595 斯坦纳树
    COJ 1287 求匹配串在模式串中出现的次数
    HDU 5381 The sum of gcd
    POJ 1739
    HDU 3377 插头dp
    HDU 1693 二进制表示的简单插头dp
    HDU 5353
    URAL 1519 基础插头DP
    UVA 10294 等价类计数
  • 原文地址:https://www.cnblogs.com/cslw5566/p/8859134.html
Copyright © 2011-2022 走看看