三、基础语法 下

  1. 函数

    • 函数带名字的代码块,用于完成具体工作。
    • def  函数名(形参1,形参2): 函数体
    • #user_name 是形参
      def greet_user(user_name):
          """显示简单的问题语"""
          print("Hello:"+user_name.title()+"!")
      
      #juice是实参
      greet_user("juice")

      传递参数形式:位置实参、关键字实参

    • def descript_userinfo(username,age):
          print("I am "+username+", I am "+str(age)+" years old")
      
      #位置实参调用形式,位置实参根据位置确定实参对应形参。
      descript_userinfo("jack",10)
      
      #关键词实参,需要准确指定函数定义的形参名
      descript_userinfo(username="jack",age=11)

      参数默认值,为形参设置指定值,在传递实参时可不传形参数已设置指定值的实参

    • #默认值示例
      def describe_userinfo(username,age=18):
          print(f"I am {username.title()}, I am {str(age)} years old")
      
      #age 默认值为18,可传递参数
      describe_userinfo("jack")

      返回值,返回简单值、列表、字典

    • 传递任意数量的实参,*传递列表,**传递字典
    • def greet_user(*users):
          print(users)
      
      greet_user(‘jack‘)
      greet_user(‘jack‘,‘tom‘)
      
      def greet_user(**users):
          print(users)
      
      greet_user(firstname=‘jack‘)
      greet_user(first=‘jack‘,last=‘tom‘)

      将函数存储在模块中,模块是独立的.py后缀文件。文件引用模块通过import  、from 模块名 import 函数名。

    • 创建类

      • python约定类名首字母大写。
      • _init_(self),是特殊方法,创建实例时python会自动运行。
      • 方法前后加_是一种约定,避免默认方法与普通方法名称发生冲突
    • 创建实例、属性赋值、属性调用、方法调用
    • class Dog():
          """模拟小狗"""
      
          def _init_(self,name,age):
              """初始化属性name和age"""
              self.name=name
              self.age=age
      
          def sit(self):
              """模拟小狗坐下"""
              print(self.name.title()+" is now sitting")
      
          def roll_over(self):
              """模拟小狗打滚"""
              print(self.name.title()+" rolled over")
      
      #创建实例
      my_dog=Dog()
      
      #属性赋值
      my_dog.name=‘while‘
      my_dog.age=6
      
      #访问属性
      print(f"name is:{my_dog.name.title()}")
      print(f"age is:{str(my_dog.age)}")
      
      #调用方法
      my_dog.sit()
      my_dog.roll_over()

      继承

  2. 文件与存储
    • 读取文件,逐行读取,移除空格
    • #相对路径
      with open(‘pi.txt‘) as object:
          contents=object.read()
          print(contents) 
      
      #绝对路径
      path=‘E:\PythonCode\DemoCode\pi.txt‘
      #移除全部空格
      pi_string=""
      
      with open(path) as object:
      
          #逐行读取
          #for line in object:
          #    print(line.rstrip())
      
          for line in object:
              pi_string+=line.strip()
      
          print(pi_string)

      写入文件,新创建写入,追加写入

      file_name=‘name2.txt‘
      
      #w 写入模式,文件不存在时创建,存在时覆盖
      with open(file_name,‘w‘) as file_object:
          file_object.write("hello kitty\n")
          file_object.write("hello world\n")
      
      # a 写入模式,文件不存在时创建,向文件中追加数据
      with open(file_name,‘a‘) as file_object:
          file_object.write("hello kitty\n")
          file_object.write("hello world\n")
      
      with open(file_name) as read_object:
          print(read_object.read().rstrip())

  3. 异常
    • try-except-else处理异常
    • ZeroDivisionError异常
    • 使用异常避免崩溃
    • pass不做任何处理跳过异常

      try:
          print(5/0)
      except ZeroDivisionError:
          print(‘发生了异常‘)
          #使用pass忽略异常
          #pass
      #使用else 处理正常流程
      else:
          print("异常被忽略")

  4. 存储数据
    • json存储数据

      import json
      
      name="number.txt"
      def get_num():
          try:
              with open(name) as f_object:
                  username=json.load(f_object)
          except FileNotFoundError:
              return None
          else:
              return username
      
      def set_num():
          """提示输入用户名"""
          username=input("请输入用户:")
          with open(name,‘w‘) as object:
              json.dump(username,object)
      
          return username
      
      def greet_user():
          username=get_num()
      
          if username:
              print("Welcome back "+username)
          else:
              username=set_num()
              print("Welcome back "+username)    
      
      greet_user()

原文地址:https://www.cnblogs.com/bro-ma/p/10367928.html

时间: 2024-10-05 05:04:49

三、基础语法 下的相关文章

ASP.NET知识重新梳理(三)------C#基础语法

C#基础语法:1.基本语法:无论代码中是否有空格,回车符,tab字符(统称为空白字符),C#编译器都不考虑这些字符: C#字符由一系列语句组成,每个语句由一个分号来结束: C#是一个块结构的语言,所有的语句都是代码块的一部分,这些块用花括号来界定("{"和"}"): C#中的注释:标记注释/*...*/ 单行注释//... 单行注释/// (可以配置VS,在编译项目时,提取这些注释后面的文本,创建一个特殊格式的文本文件,该文件可用于 创建文档说明书): C#代码是区

JavaSE入门学习7:Java基础语法之语句(下)

继续接着Java基础语法来:JavaSE入门学习5:Java基础语法(一)和JavaSE入门学习6:Java基础语法(二). 语句 Java经常使用的3种循环:while.do...while,for. (5)Java循环语句之while 语法: watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQv/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center" > 运行

Python 基础语法(三)

Python 基础语法(三) --------------------------------------------接 Python 基础语法(二)-------------------------------------------- 七.面向对象编程 python支持面向对象编程:类和对象是面向对象编程的两个主要方面,类创建一个新的类型,对象是这个类的实例. 对象可以使用普通的属于对象的变量存储数据,属于对象或类的变量被称为域:对象也可以使用属于类的函数,这样的函数称为类的方法:域和方法可

python基础语法(三)

--------------------------------------------接 Python 基础语法(二)-------------------------------------------- 七.面向对象编程 python支持面向对象编程:类和对象是面向对象编程的两个主要方面,类创建一个新的类型,对象是这个类的实例. 对象可以使用普通的属于对象的变量存储数据,属于对象或类的变量被称为域:对象也可以使用属于类的函数,这样的函数称为类的方法:域和方法可以合称为类的属性. 域有两种类

JAVA学习(三):Java基础语法(变量、常量、数据类型、运算符与数据类型转换)

Java基础语法(变量.常量.数据类型.运算符与数据类型转换) 1.变量 Java中,用户可以通过指定数据类型和标识符来声明变量,其基本语法为: DataType identifier; 或 DataType identifier = value; 其中,DataType是变量类型,如int/string/char/double/boolean等:identifier是变量名称,即标识符:value就是声明变量的值. 注: a.标识符由数字0-9.大小写字母.下划线.美元符号.人民币符号以及所有

Scala系统学习(三):Scala基础语法

如果您熟悉Java语言语法和编程,那么学习Scala将会很容易.Scala和Java之间最大的句法差异在于行结束字符的分号(;) 是可选的. 当编写Scala程序时,它可以被定义为通过调用彼此的方法进行通信的对象的集合.现在我们简单地看一下类,对象,方法和实例变量的含义. 对象 - 对象有状态和行为.一个对象是类的一个实例.例如 - 狗有状态:颜色,名称,品种,它行为有:摇摆,吠叫和吃东西. 类 - 可以将类定义为描述与该类相关的行为/状态的模板/蓝图. 方法 - 一个方法基本上是一种行为.一个

Python基础语法精心总结!看完都知道的可以往下继续学习了

? ? 这应该是最详细的Python入门基础语法总结! 进裙送上图所有书籍哦~ ? 定义变量,使用变量 input 用户自己输入值 print 打印值 可以输出多个变量 %d|%s 用于输出变量时占位 字符串(后期爬虫必备) int()把字符串转换为数字 str()把数字转换为字符串 len()获取某个字符占用的字节数 字符串可以用+连接 字符下标可以为负数 str[起始位置:终止位置:步长]切片,从起始开始截取字符串,到终止位置结束,不包括终止位置 str[::-1]倒序 str.find()

Java基础语法

Java的基础语法中包含字符集.标识符和关键字.变量和常量.语句.注释.运算符和表达式这些基本要素. 一.关键字 编程语言都有一些保留的单词,用于定义该语言,这些单词对于编译器有特殊含义,不能作为标识符使用: Java中的true.false.null这三个保留字,不能作为标识符使用,对于编译器有特殊含义: main是一个用于描述Java程序开始方法的特殊名称,它不是一个关键字: abstract 抽象 boolean 逻辑运算: 布尔 break 打破: 断开 byte 字节: case 例,

前端学PHP之正则表达式基础语法

前面的话 正则表达式是用于描述字符排列和匹配模式的一种语法规则.它主要用于字符串的模式分割.匹配.查找及替换操作.在PHP中,正则表达式一般是由正规字符和一些特殊字符(类似于通配符)联合构成的一个文本模式的程序性描述.正则表达式有三个作用:1.匹配,也常常用于从字符串中析取信息:2.用新文本代替匹配文本:3.将一个字符串拆分为一组更小的信息块.本文将详细介绍PHP中的正则表达式基础语法 [注意]关于javascript的正则表达式的详细信息移步至此 历史 在PHP中有两套正则表达式函数库,两者功