• 范例


    __author__ = '6005001645'
    #三元运算符 :判定条件?为真时的结果:为假时的结果
    x=20
    y=30
    z=x if x<20 else y
    print(z)
    # result=[i for i in range(1,2) if i%2==0]
    # print(result)
    # #读模式
    # file=open("information.txt","r")
    # content=file.read()
    # print(content)
    # file.close()
    #
    # #追加模式
    # file=open("information.txt","a",encoding="GBK")
    # file.write("
    xiaongzi  lanzhou 13555555222")
    # content=file.read()
    # print(content)
    # file.close()
    #
    # #读写模式
    # file=open("information.txt","r+",encoding="GBK")
    # content=file.read()
    # file.write("
    xiaonghei  lanzhou 13555555222")
    # content=file.read()
    # print(content)
    # file.close()
    #
    # #写读模式
    # file=open("information.txt","r+",encoding="GBK")
    # file.write("
    xiaonghei  lanzhou 13555555222")
    # file.write("
    xiaonghei2  lanzhou 13555555222")
    # content=file.read()
    # print(content)
    # file.close()
    #
    # #强制刷进去
    # file=open("information.txt","r+",encoding="gbk")
    # file.write("
    xiaonghei  lanzhou 13555555222")
    # file.flush()
    
    #seek的用法
    # file=open("information.txt","r+",encoding="utf-8")
    # file.seek(50)
    # print(file.tell())
    # content=file.read()
    # file.tell()
    # print(content)
    # print(file.tell())
    
    
    #逐行的去做
    # file=open("information.txt","r+",encoding="utf-8")
    # for  i  in  file:
    #     print(i.strip())
    # file.close()
    
    #示例
    import  sys
    file_new="information2.txt"
    file=open("D:information.txt","r+",encoding="utf-8")
    relace_before="详子"
    relace_after="lisi"
    for  i  in  file:
        print(i.strip())
        if relace_before in i:
            content=i.replace(relace_before,relace_after)
        else:
            content=i
    file.write(content)
    file.close()
    
    
    
    #函数定义
    # def functionname( parameters ):
    #     function_suite
    #     return [expression]
    # 说明:def为关键字,后面为函数名,函数名不能重复,括号中内容为参数,根据实际情况,定义你需要的参数个数
    # function_suite 为 函数体
    # return 为返回值 如果不写return这一行的话,默认返回为None
    
    
    # 函数调用
    def hello():
        print('hello!')
    hello() #函数调用,函数调用的方式为,函数名后跟括号
    
    # 形参和实参
    # 函数在调用的时候,可以传入参数,有形参和实参
    # 形参:形参变量只有在被调用时才分配内存单元,在调用结束时,即刻释放所分配的内存单元。因此,形参只在函数内部有效。
    
    # 实参:实参可以是常量、变量、表达式、函数等,无论实参是何种类型的量,在进行函数调用时,它们都必须有确定的值
    # 以便把这些值传送给形参。函数调用结束返回主调用函数后则不能再使用该形参变量。
    
    # 函数的参数类型
    # 函数的四种参数类型:位置参数、默认参数、不定长参数、关键字参数
    # 位置参数:
    # 位置参数,就是按照参数的位置来进行传参
    # 例:
    def reg(name,age):
        print('hello %s,age is %s'%(name,age))    #name,age是必填参数,位置参数
    reg('hhf',27)
    
    # 说明:有几个位置参数在调用的时候就要传几个,否则就会报错
    # 如果有多个位置参数,但却记不住参数的位置,可以使用位置参数的名字来指定调用
    # 具体调用为reg(name='huihui',age=25),这种调用方式叫做关键字传参
    #
    # 默认参数:
    # 默认参数就是在定义形参的时候,给函数默认赋一个值
    # 默认参数不是必填的,如果给默认参数传值的话,它就会使用你传入的值。如果使用默认值参数的话,必须放在位置参数后面定义
    #
    # 例:
    def reg(name,age,sex='男'):
        print('hello %s,age is %s'%(name,age))#name,age是必填参数,位置参数 #sex是默认值参数,不是必填参数
        reg('hhf',27)#不传sex,sex使用默认值参数,sex='男'
        reg('huihui',28,'女') #给sex传值,sex='女'
    reg("yy","33")
    
    # 非固定参数:
    # 上面的两种位置参数和默认参数都是参数个数是固定的
    # 如果有一个函数,参数不是固定的,也不知道函数会扩展成啥样,可能参数越来越多,这个时候如果使用固定的参数,后面程序就不好扩展,这时候就可以用非固定参数了
    # 非固定参数有两种,一种是可变参数,一种是关键字参数
    # 可变参数:
    # 可变参数用*来接收,后面想传多少个参数就传多少个,如果位置参数、默认值参数、可变参数一起使用的的话,可变参数必须在位置参数和默认值参数后面。可变参数也是非必传的。
    # 例:
    def post(*args):
        print(args)
        post('001','denglu','http://www.baidu.com',post,a=1)
        post()
    # 说明:可变参数,也叫参数组,也不是必填的,它接收到的是一个元组
    # 它把调用函数时传进去的每一个参数到一个元组里
    #
    # 关键字参数:
    # 关键字参数使用**来接收,后面的参数也是不固定的,想写多少个写多少个,当然也可以和上面的几种一起来使用,如果要一起使用的话,关键字参数必须在最后面。
    # 使用关键字参数的话,调用的时候必须使用关键字传参,关键字参数也是非必传的
    # 例:
    def kw(**kwargs):
        print(kwargs)
        kw()
        kw(age=18,name='aaa')
        d={'age':18,'name':'aaa'}
        kw(**d)
    # 说明:关键字参数,接收的是一个字典,调用得用xx=11,也不是必填的
    # 传入字典调用的时候就得写**{'age':18,'name':'aaa'}
    #
    # 其它例子:
    def other2(name,country='china',*args,**kwargs):
        print(name)
        print(country)
        print(args)
        print(kwargs)
        other2('hhf')
        other2('niuhui','beijing','python','changping',user='niu')
    # 说明:如果必填参数,默认值参数,可变参数和关键字参数要一起使用的话,
    # 必须参照必填参数、默认值参数、可变参数和关键字参数的顺序接收,否则会报错
    
    def write(filename,model,ending,user,os,money,other):
        print(filename)
        print(model)
        print(ending)
        print(user)
        print(os)
        print(money)
        print(other)
    
    write(os='Windows',user='wubing',model='w',filename='a.tx',ending='utf8',money=9999,other='xxx')
    #write(os='windows','a.txt') #位置参数调用参数必须在关键字调用前,否则报错
    write('a.txt','w','gbk2312','hhf',os='windwos',money=9999,other='xxx')
    
    # 函数返回值
    def plus(a,b):
        c=a+b
        return c
    # 说明:
    # a函数碰到return,立即结束这个函数
    # b调用完函数之后,返回计算结果
    # c函数可以没有返回值,如果没有返回值的话,默认返回None,如果这个函数的处理
    # 结果我们需要在别的地方用到,就得给函数一个返回值
    # 如果函数return多个值的话,那么它就会把多个值放到一个元组里面去
    
    score1 = 50
    score2 = 90
    def echo():
        return score1,score2
    
    # 局部变量和全局变量
    # 局部变量:在局部内生效,出了这个变量的作用域,这个变量就失效了
    # 全局变量:在整个程序里面都生效的,在程序最前面定义的都是全局变量
    # score3 = [1,2,3,4,5]
    # score3 = {"id":1}
    score3 = 100
    def my_open():
        fw = open('a.txt','a+')
        fw.seek(0)
        print('score3',score3)
        d={'id':2}
        d['price']=99
    
    # 说明:
    # a.在函数里面定义变量叫局部变量,它只能在函数里面用,出了该函数外,就不能使用了
    # b.在函数外面定义的变量,是全局变量,在函数内也可以使用
    # c 如果想在函数里面修改全局变量的值,那么要先用global关键字声明
    # 要修改全局变量是int、string的话,必须得写global
    # 如果是字典和list的话,要修改的话,不能加global
    

      

  • 相关阅读:
    数据结构实验之图论六:村村通公路
    数据结构实验之图论二:基于邻接表的广度优先搜索遍历
    数据结构实验之图论二:基于邻接表的广度优先搜索遍历
    树结构练习——判断给定森林中有多少棵树
    树结构练习——判断给定森林中有多少棵树
    图结构练习——最短路径
    图结构练习——最短路径
    【郑轻】[1778]和尚特烦恼4——有多少战斗力
    【郑轻】[1778]和尚特烦恼4——有多少战斗力
    【郑轻】[1776]和尚特烦恼2——第几个素数
  • 原文地址:https://www.cnblogs.com/wjy123/p/9321381.html
Copyright © 2020-2023  润新知