PythonDay1Base

变量

  • 即python运行过程中可以发生改变的量,如同数学中的未知数X,将一个确定的量赋值给变量。

  • 变量定义原则

    • 由英文大小写,数字以及下划线_组成

    • 不能以数字开头

    • 不能以关键字定义

      a = 100 右边的100赋值给a

  • 定义变量时的规范

    • 要见名知意

    • 命名要施行驼峰式命名法或者下划线命名法

      • -驼峰式命名法 第一个单词全部小写,从第二个单词开始,首字母大写

        highStudent
        playGame
        selectStudentWithName
      • 下划线命名法 所有单词全部小写,单词与单词之间使用下划线拼接

        high_student
        play_game

基本数据类型

  • str 字符串类型

    • 格式1:由单引号括起来的字符序列

      '这是一个例子'

    • 格式2:由双引号括起来的字符序列

      ""这是一个例子""

    • 格式3:由三个单引号括起来的字符序列

      '''这是一个例子'''

    • 格式4:由三个双引号括起来的字符序列

      """这是一个例子""
      格式3、4可以用回车换行表示,而前两者不行。
  • int 整数型

     ```

a=100,b=33,c=45

```

  • float 浮点型
a=1.3412
  • bool 布尔类型
True False

输入输出

  • 输入 input
接受的所有类型(内容)都是字符串
  • 输出 print

    直接使用print是以默认形式输出
    • sep:分隔符,默认为空格,可用"sep='-'"以-分割
    • end:输出完一行后的符号,默认为\n,可用"end=','"以,分割

类型转换

  • 查看数据类型type(**)

  • 转整数int(**)

    age = input("请输入您的年龄:")
    print(int(age)+1)易错点:并非所有的值都能转数值
    name = input("请输入您的姓名:")
    print(int(name)) # 报错
  • 转浮点数float(**)

  • 转字符串str(**)

  • 转bool类型bool(**)

    • 转bool类型隐藏用法

      若非上面的值,转bool的结果都是True

并非所有类型都能转换,汉字不可向数字转换。

bool类型中:0,0.0,"",''均为false。

注释

在Python程序运行过程中,不会被解释运行的内容。

  • +空格+内容,即单行注释。

  • 利用首尾三单引号进行注释

    '''***'''

    """***"""

前提是不赋值给变量。

Pass关键字

为了维护语句完整性而引出的一个关键字

字符串的格式化

需求:输入自己的姓名,年龄,性别,爱好,并输出。

  • 方式1:用“+”拼接

    name = input("请输入您的姓名:")
    age = input("请输入您的年龄:")
    gender = input("请输入您的性别:")
    like = input("请输入您的爱好:")
    print("您的姓名是:" + name + ", 年龄:" + age + ", 性别:" + gender + ", 爱好:" + like)
  • 方式2:使用.format进行格式化 【是python推荐的方式】

    • 类型1:

      name = input("请输入您的姓名:")
      age = input("请输入您的年龄:")
      gender = input("请输入您的性别:")
      like = input("请输入您的爱好:") # 方式2中的格式1
      print("您的姓名是:{0},年龄:{1},性别:{2},爱好:{3}".format(name, age, gender, like))
    • 类型2:{}

      若大括号中不传索引,那么大括号取值的时候,按照后面的值的顺序进行排序

      name = input("请输入您的姓名:")
      age = input("请输入您的年龄:")
      gender = input("请输入您的性别:")
      like = input("请输入您的爱好:") # 方式2中的格式2
      print("您的姓名是:{},年龄:{},性别:{},爱好:{}".format(name, age, gender, like))
    • 类型3:

      name = input("请输入您的姓名:")
      age = input("请输入您的年龄:")
      gender = input("请输入您的性别:")
      like = input("请输入您的爱好:")
      print("您的姓名是:{a1},年龄:{a2},性别:{a3},爱好:{a4}, 不好意思没听清,您的爱好是: {a4}".format(a1=name, a2=age, a3=gender,a4=like))
  • 方式3:%

    这种方式传参,需要考虑数据类型的问题。

    name = input("请输入您的姓名:")
    age = input("请输入您的年龄:")
    gender = input("请输入您的性别:")
    like = input("请输入您的爱好:")
    print("您的姓名是:%s,年龄:%s,性别:%s,爱好:%s" % (name, age, gender, like))

语句结构

选择结构if

注意事项:

  • 判断条件的类型必须是bool类型
  • 语句体前面必须要有缩进,默认为四个空格
  • 格式1:

    if 判断条件:
    当判断条件为True时执行
  • 格式2:

    if 判断条件:
    True
    else 判断条件:
    False
  • 格式3:

    if 判断条件1:
    当判断条件1为True的时候执行
    elif 判断条件2:
    当判断条件2为True的时候执行
    elif 判断条件3:
    当判断条件3为True的时候执行
    elif 判断条件4:
    当判断条件4为True的时候执行
    ...
  • 格式4:为了程序的严谨性,在格式3的基础上增加else

    if 判断条件1:
    当判断条件1为True的时候执行
    elif 判断条件2:
    当判断条件2为True的时候执行
    elif 判断条件3:
    当判断条件3为True的时候执行
    elif 判断条件4:
    当判断条件4为True的时候执行
    ...
    else:当上面所有的条件都不满足的时候执行

    ​ python中数值可以连续比较

循环结构for while

  • range()内置函数

    • 使用方式1:range(数值) 生成一个序列,序列范围是0 ~ 数值-1

      for i in range(10):
      print(i)
    • 使用方式2:range(开始值, 结束值) 生成一个序列,序列范围是 开始 ~ 结束-1

      # 输出1-10
      for i in range(1, 11): # 1~10
      print(i)
    • 使用方式3:range(开始值, 结束值, 步长) 生成一个序列,序列范围是 开始 ~ 结束-1 ,取值的

      方式每隔步长取一次

      for i in range(1, 11, 2): # 1 3 5 7 9
      print(i)
  • for循环语句:

    • 格式1:

      for 变量1[,变量2,变量3....] in 可遍历序列:
      使用变量
      • 例:求1-10之和:

        num = 0
        for i in range(1, 11):
        num = num + i
        print(f"1-10之和为:{num}")
      • 例:求1-100的奇数和:

        num = 0
        for i in range(1, 101):
        if i%2==1:
        num = num + i
        print(f"1-10之和为:{num}")
    • 格式2:

      for 变量1[,变量2,变量3....] in 可遍历序列:
      使用变量
      else:
      语句体 # 当for循环正常结束的情况下,执行这里的else
  • while循环语句:

    • 格式1:

      while 判断条件表达式:
      循环体
      • 例:

        注意: 使用while循环的时候,要注意结束循环的条件变化!否则一不小心就成了死循环

        num = 1
        while num <= 5:
        print("好好学习,天天向上!")
        num = num + 1 print("hello world")
    • 格式2:

      while 判断条件表达式:
      循环体
      else:
      语句体 # 当while循环正常结束的情况下,执行这里的else
  • for循环和while循环的区别?

    • 当你确定循环的范围的时候,优先考虑for循环 【吃葡萄】
    • 若循环的范围不确定,但是能够知道循环的结束条件的时候,优先考虑while循环 【喝水】

控制流程语句

  • continue 继续,跳过当次循环,继续下一次循环

    • 例:遍历1-10,当遇到5的时候,使用一次continue

      • for循环实现

        for i in range(1,11):
        if i==5:
        continue
        print(i) print("好好学习")
      • while循环实现

        num = 1
        while num <= 10:
        if num==5:
        num = num + 1
        continue
        print(num)
        num = num + 1
  • break 结束,终止整个循环

    • 例:遍历1-10,当遇到5的时候,使用一次break

      • for循环实现

        for i in range(1,11):
        if i==5:
        break
        print(i) print("好好学习")
      • while循环实现

        num = 1
        while num <= 10:
        if num==5:
        num = num + 1
        break
        print(num)
        num = num + 1
      • 注意,遇到break的时候,无论是for循环,还是while循环,若存在else语法都不会执行

数据类型详解

字符串

概述:由若干个字符组成字符序列,称之为字符串

特点:字符串一旦被创建就不能被更改

  • 定义一个字符串
  • 字符串一旦被创建就不可再修改

公共功能

  • len() python内置的函数,可以获取字符串的长度【字符个数】

  • 字符串具有索引的概念,可以通过索引获取对应的字符

    • 从左向右,从0开始编号;从右向左,从-1开始编号

      • 使用for循环遍历一个字符串,得到每一个字符

      • 字符串通过索引获取字符语句格式:字符串变量名[索引]

        s1 = "shujiakeji"
        # print(len(s1))
        for i in range(len(s1)): # 0 - 9
        print(s1[i],end='')
        else:
        print()
        print("hello world")
  • 字符串具有切片功能

    • 字符串变量名[开始索引 : 结束索引] 【注意:左闭右开】

      s1 = "33期的同学们,大家好,欢迎来到数加科技!"
      print(s1[8:11]) # 8,9,10
      print(s1) s1 = "33期的同学们,大家好,欢迎来到数加科技!"
      print(s1[-13 : -10]) # 8,9,10 print(s1)
    • 字符串变量名[开始索引 : 结束索引 : 步长]

      s1 = "33期的同学们,大家好,欢迎来到数加科技!"
      print(s1[::2]) # 3期同们大好欢来数科!
      print(s1)

独有功能

  • upper() 转大写

  • lower() 转小写

    while True:
    name = input("请输入您的姓名:")
    if name.upper() == 'Q':
    print("退出系统....")
    break
    pwd = input("请输入您的密码:")
    if name == 'root' and pwd == '123456':
    print("登录成功!")
    break
    else:print("登录失败!请重新输入....")
  • isdigit() 判断字符串内容是否是数字

    s1 = input("请输入一个字符串:") # '100' 'hello'
    if s1.isdigit():
    print(int(s1)+1)
    else:
    print("您输入的字符串内容不是一个数值") print("好好学习")

随机推荐

  1. SpringCloud入门(二)服务间调用和案例

    一.微服务拆分注意事项微服务拆分注意事项:1.单一职责:不同微服务,不要重复开发相同业务2.数据独立:不要访问其它微服务的数据库3.面向服务:将自己的业务暴露为接口,供其它微服务调用 1.微服务需要根 ...

  2. 手撸MQ消息队列——循环数组

    队列是咱们开发中经常使用到的一种数据结构,它与栈的结构类似.然而栈是后进先出,而队列是先进先出,说的专业一点就是FIFO.在生活中到处都可以找到队列的,最常见的就是排队,吃饭排队,上地铁排队,其他就不 ...

  3. [TK] Blocks 单调栈

    题目描述 给出 \(N\) 个正整数 \(a[1..N]\) ,再给出一个正整数 \(k\) ,现在可以进行如下操作:每次选择一个大于 \(k\) 的正整数 \(a[i]\) ,将 \(a[i]\) ...

  4. Hive----基本概念

    Hive 基本概念 1. Hive:由 Facebook 开源用于解决海量结构化日志的数据统计. 2. Hive 是基于 Hadoop 的一个数据仓库工具,可以将结构化的数据文件映射为一张表,并提供类 ...

  5. 【赵渝强老师】Docker Swarm实现服务的滚动更新

    一.什么是Docker Swarm? Docker Swarm是Docker官方提供的一款集群管理工具,其主要作用是把若干台Docker主机抽象为一个整体,并且通过一个入口统一管理这些Docker主机 ...

  6. VMware Vsphere 8.0 ESXI 主机部署

    一. VMware vSphere 8.0新特性 VMware vSphere 8.0是一个全新的版本,引入了许多新功能,其中最主要的新功能包括 1.集中式云控制台 使 IT 管理员能够借助 vSph ...

  7. 读取.raw格式文件(学习记录)

    import cv2 #OpenCV包 import numpy as np # 首先确定原图片的基本信息:数据格式,行数列数,通道数 rows=886#图像的行数 cols=492#图像的列数 ch ...

  8. nestjs 和 .net DI 使用并注册的区别

    核心:对象之间的关系 各种 引用  --- 方便使用各种服务 1. .net 注册服务 三种注册方式 build.Service.Addsigtel 单例 瞬时 等 .addSingtel<IU ...

  9. ribbon配置负载均衡策略

    ribbon的负载均衡策略 com.netflix.loadbalancer.RandomRule:从提供服务的实例中以随机的方式: com.netflix.loadbalancer.RoundRob ...

  10. harbor磁盘爆满,执行垃圾回收清理镜像

    1.在使用Jenkins发版操作时发现,推送私有仓库harbor报错: received unexpected HTTP status: 500 Internal Server Error 2.想要登 ...