编程基础的第三课-python基础

Python语法

1.几个概念

1.1表达式
  • 表达式,是由数字、算符、数字分组符号(括号)、自由变量和约束变量等以能求得数值的有意义排列方法所得的组合。
  • 表达式特点:
    1.表达式一般仅仅用于计算一些结果,不会对程序产生实质性的影响
    在这里插入图片描述

2.如果在交互模式中输入一个表达式,解释器会自动将表达式的结果输出
在这里插入图片描述

1.2语句
  • 一个语法上自成体系的单位,它由一个词或句法上有关连的一组词构成
  • 语句的执行一般会对程序产生一定的影响,在交互模式中不一定会输出语句的执行结果
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
  • if 判断语句 只有符合判断语句的条件的时候,才会进入到if语句内部去执行代码,后面的代码是一个tab或者四个空格的距离。
  • pass做占位的作用,防止报错。
  • if语句里面的代码,我们称呼为一个代码块,代码块要么都执行,要么都不执行。
1.3程序(program)
  • 程序就是由一条一条的语句和一条一条的表达式构成的。
1.4函数
  • 函数就是一种语句,函数专门用来完成特定的功能
  • 函数长的形如:xxx()
  • 函数的分类:
    1.内置函数 : 或者内建函数,就是由语法规定存在的函数,这些函数,包含在编译器的运行时库中,程序员不比单独书写代码实现它,只需要调用既可。
    2.自定义函数 : 由程序员自主的创建的函数 当我们需要完成某个功能时,就可以去调用内置函数,或者自定义函数
  • 函数的2个要素
    1.参数
    2.返回值

下图为debug演示:
1.在代码前打红色断点(称呼为调试,就是帮你解决代码有问题的情况)
2.右键鼠标选择debug模式,逐行执行代码,查找问题。
在这里插入图片描述
在这里插入图片描述

  • 注释的意思:当你运行程序的时候,你如果不想要某一行代码执行,你可以直接注释它,那么注释的那一行代码将不再执行。

2.标识符

2.1关键字
  • python一些具有特殊功能的标识符,这就是所谓的关键字,关键字是python已经使用的了,所以不允许开发者自己定义和关键字相同的名字的标识符
    下图为查看关键词操作:
    在这里插入图片描述
2.2标识符概念
  • 开发人员在程序中自定义的一些符号和名称。标识符是自己定义的,如变量名 、函数名等
  • 组成:由26个英文字母大小写,数字 0-9 符号 _$
  • 标识符的规则:
  • 1.标识符中可以包含字母、数字、_,但是不能使用数字开头 例如:name1 name_1 _name1 1name(不行)
    2.Python中不能使用关键字和保留字来作为标识符

保留字是 Python 语言中一些已经被赋予特定意义的单词,这就要求开发者在开发程序时,不能用这些保留字作为标识符给变量、函数、类、模板以及其他对象命名。
在这里插入图片描述

  • 命名方式
    1.驼峰命名法
  • 小驼峰式命名法: 第一个单词以小写字母开始;第二个单词的首字母大写,例如:myName、aDog
  • 大驼峰式命名法: 每一个单字的首字母都采用大写字母,例如:FirstName、LastName
    2.下划线命名法
    不过在程序员中还有一种命名法比较流行,就是用下划线“_”来连接所有的单词,比如 get_url buffer_size

基本数据类型

1.整数和小数

基本数据类型
  • 数据类型指的就是变量的值的类型,也就是可以为变量赋哪些值
整数和小数
  • 整数 : 所有整数 例如 : a = 1 b = 100 c =999 都是int类型
  • 小数常量 : 所有小数 例如 a = 1.2 b=6.66 用float类型表示

2.布尔值和空值

布尔值和空值
  • 布尔: 只有2个值一个是True 一个是False
  • None常量:只有一个数值就是None 也就是空值
    在这里插入图片描述
    使用python console计算是进行二进制与十进制换算,因此会出现偏差。在这里插入图片描述
    当数值过大溢出python处理范围,可用下划线连接数值溢出部分。
    在这里插入图片描述

变量

变量的概念?

  • 变量是计算机内存中的一块区域,存储规定范围内的值,值 可以改变,通俗的说变量就是给数据起个名字。

  • 变量命名规则
    1.变量名由字母、数字、下划线组成要符合标识符的命名规范
    2.数字不能开头
    3.不能使用关键字
    举例:
    a = 1
    b = 'abc'
    c = True
    d = [1, 2, 3]
    e = {}
    注:变量可以是很多数据类型的,不仅仅局限于整数(int),这种取名字的方式也可以叫做引用。

  • 注意 : 两个对象相等和两个对象是同一个对象是两个概念
    判断两个变量是不是同一个变量,判断的是它们的id是否相等。
    任何的整数在内存当中都是有固定的位置的。python console中的处理内存较小,较复杂数据处理时,将借用硬盘空间,而不能提供给整数一个固定的位置。
    对比如下:
    在这里插入图片描述

在这里插入图片描述

在这里插入图片描述
在这里插入图片描述

基本数据类型

3.字符串

什么是字符串
  • 字符串是由数字、字母、下划线组成的一串字符
  • 注意
    1.单引号或双引号不能混合使用
    在这里插入图片描述

2.Python中用一对双引号或者一对单引号包裹的内容就是字符串
在这里插入图片描述
在这里插入图片描述

转义字符
  • 转义字符是一种特殊的字符常量。转义字符以反斜线""开头,后跟一个或几个字符。转义字符具有特定的含义,不同于字符原有的意义,故称“转义”字符
  • 总结
  • \t 表示制表符
  • \n 表示换行符
  • \ 表示反斜杠
  • ’ 表示 ’ 字符串本意
  • \ ‘’ 表示 ‘’ 字符串本意
  • r’ ’ 引号内的所有内容都是字符串本意
    在这里插入图片描述
    在这里插入图片描述
长字符串
  • 长字符串 又叫做文档字符串 我们使用三重引号来表示一个长字符串’’’ ‘’’
  • 三重引号可以换行,并且会保留字符串中的格式
  • 作用:
    在这里插入图片描述
    在这里插入图片描述
格式化字符串

• 第一种格式化字符串 拼串
• 第二种格式化字符串 参数传递
• 第三种格式化字符串 占位符

  1. %s 字符串占位
  2. %f 浮点数占位
  3. %d 整数占位

• 第四种格式化字符串 f’{变量}’
•-str.format ()

在这里插入图片描述
在这里插入图片描述

作业:

1 a,b=6,8我想让a=8,b=6该怎么办?用两种方式实现

a,b = 6,8
a,b = b,a
print(a, b)
a,b = 6,8
c = a
a = b
b = c
print(a,b)

2 完成字符串的逆序以及统计
• 设计一个程序,要求只能输入长度低于31的字符串,否则提示用户重新输入
• 打印出字符串长度
• 使用切片逆序打印出字符串

str1 = input('请输入:')
if len(str1) < 31:
    print('字符串的长度为: %s' % len(str1))
    print('逆序打印字符串{}'.format(str1[::-1]))
else:
    print('你输入的长度过大,请输入长度低于31位的字符串')

3 要求从键盘输入用户名和密码,校验格式是否符合规则,如果不符合,打印出不符合的原因,并提示重新输入
• 用户名长度6-20,用户名必须以字母开头
• 密码长度至少6位,不能为纯数字,不能有空格

# 账号检查
while True:
    ID = input('请输入用户名:')
    list_ID = list(ID)
    head_num = list_ID[0]    # 获取第一个输入字符
    if head_num.isalpha() == False:   # 判断首字母是否为字符
        print('首字母必须为字母,请重新输入。。。。')
    if len(ID) < 6 or len(ID) > 20:   # 判断字符串长度
        print('用户名长度为6-20,请重新输入。。。。')
    else:
        # 检查密码
        pw = input('请输入密码:')
        if len(pw) < 6:
            print('密码长度不足')
        if pw.isdigit() == True:  # 判断密码是否为纯数字
            print('密码不能为纯数字')
        for i in pw:
            if i.isspace() == True:  # 判读密码中是否存在空格
                print('密码不能有空格')
        else:
            break