[oeasy]python040_缩进几个字符好_输出所有键盘字符_循环遍历_indent

news/2024/11/14 12:43:00/

040_缩进几个字符好_输出所有键盘字符_indent

缩进几个字符好?

  • 上次 研究了range函数

    • 根据range函数的结果
    • 生成了for循环
  • 可以输出

    • 从start
    • 到end - 1
    • 所有的数字

图片描述

  • 想要 循环输出

    • 必须得缩进吗?
for num in range(ord('A'), ord('Z')+1):print(num,chr(num))
  • 不缩进会如何呢?🤔

编写程序

  • 编写一个indent.py
vi indent.py
  • 我要看看所有的字符

    • range(0, 123)
    • 从 0 开始
    • 到 ord("z") 结束
for num in range(0, 123):print(num)
  • 按"+P将代码粘贴
:w|!python3 %
  • 保存并运行当前文件

再看代码

  • 第 1 行

    • 使用了for循环
    • 循环变量为num
    • 让 num 从 0 到 123
    • 挨个循环
for num in range(0, 123):print(num)
  • 第 2 行

    • 是 第一句for循环的 循环体

      • 需要缩进到里面
      • 归for语句统领
    • 每次循环的过程中

      • 输出n这个数字

图片描述

  • 第2行 非 缩进不可 吗?
  • 缩进 能怎么着??😠

缩进问题

  • 尝试把第二行的缩进去掉
for num in range(0, 123):
print(num)
  • 运行结果

图片描述

  • 程序出现了 IndentationError

    • 这是继 NameError、TypeError之后的
    • 又一种新的 Error类型

提问

  • 拿报错信息问问ai

图片描述

  • 缩进必须得有!
  • 缩进说明

    • 本行是 for循环的 循环体
    • 归for语句管
  • 只 缩进个字符

    • 可以吗?🤔

缩进数量

  • 按i进入插入模式

    • 退格修改代码
    • 只 缩进个空格
for num in range(0, 123):print(num)
  • 这个程序可以运行吗?🤔

运行

  • esc

    • 退出插入模式
  • :⬆️enter

    • 找到之前的底行命令

图片描述

  • 可以运行

修改缩进数量

  • 按i进入插入模式

    • 缩进增加到 八个空格
for num in range(0, 123):print(num)
  • 缩进一个和八个

    • 都可以正确运行
  • 缩进几个字符

    • 合适 呢?

问问ai

图片描述

  • ai 说最好四个空格

    • 我想到了一个按键

移动位置

  • 先用u键

    • 把程序 恢复回来
  • 将 光标移动到 第二行第一个字符

    • 按i进入插入模式

图片描述

  • 使用键盘中的Tab

图片描述

  • 缩进刚好 4字符

图片描述

  • 再按Tab

    • 又缩进4字符

图片描述

  • Tab是什么意思呢?

TAB

  • TAB键来自于table

    • 意思是制表符

图片描述

  • 具体写作\t

    • 来自table

图片描述

  • 有文件明确要求

    • python 需要缩进 4个空格吗?

对齐

  • python 有个规范PEP8

    • PEP 8: The Style Guide for Python Code

图片描述

  • 明确要求

    • 4个字符进行缩进
    • 要保证对齐

书写风格

图片描述

  • 我们按照这种书写风格

图片描述

  • 四个字符

四个字符

  • 1个Tab

    • 对应 4个空格
    • python缩进的 标准

图片描述

  • Tab之后

    • 光标位于
    • 第2行,第5个字符

图片描述

  • esc

    • 退出插入模式
    • 准备运行

运行结果

  • :w|!python3 %

    • 执行底行命令

      • 保存
      • 并 用python3 运行当前程序

图片描述

  • 可以拖动侧面滚动条

    • 翻看输出结果
  • 从0到122都输出了一遍

    • 为什么range(0,123)
    • 只输出 到122 来着?

查询帮助

  • 从 底行命令模式

图片描述

  • 查询 range函数 的帮助

图片描述

帮助内容

  • 起始位置 start

    • 默认值为 0
    • 可以省略
  • 结尾部分 stop

    • exclusive
    • 不包括

图片描述

  • q

    • 退出帮助
  • quit()

    • 退出游乐场
  • Enter回车

    • 回到vim

修改代码

for num in range(123):print(num)
  • 运行结果

    • 序号范围 已经ok

图片描述

  • 可以把

    • 序号和对应字符
    • 都输出吗?

修改代码

for num in range(123):print(num, chr(num),sep=":")
  • 运行结果

图片描述

  • 大写和小写字母之间

    • 夹杂着 一些标点

编码规律

  • 键盘上能输入的字符

    • 除 大小写字母 之外
    • 还有 标点 和 数字

图片描述

  • 这些字符应该

    • 有序号
    • ordinal

字符全排列

  • 统计数量

    • 大小写各26
    • 数字10
    • 各种符号 40个左右
  • 26 * 2 + 10 + 40

    • = 102

图片描述

  • 找来找去也没有找到

    • 竖线符号(|)?

总结

  • 这次 输出了

    • 从0到122 序号 对应的所有字符
for num in range(123):print(num, chr(num),sep=":")
  • 字符类型包括

    • 数字
    • 大小写字母
    • 符号

图片描述

  • 但是 找不到 竖线符号(|)

    • 这个竖线 在哪里呢??🤔
  • 我们下次再说👋
    • 蓝桥->​​oeasy 教您玩转 python_Python - 蓝桥云课​​
    • github->​​GitHub - overmind1980/oeasy-python-tutorial: 良心的 Python 教程,面向零基础初学者简明易懂的 Python3 入门基础课程。在linux+vim生产力环境下,从浅入深,从简单程序学到网络爬虫。可以配合蓝桥云上实验环境操作。​​
    • gitee->​​oeasy教您玩转python教程: 面向零基础初学者的简明易懂的 Python3 入门课程,对没有编程经验的同学也非常友好。在vim下从浅入深,逐步学习。从基础入门学习到爬虫。​​

http://www.ppmy.cn/news/1546928.html

相关文章

C++ 中的智能指针(Smart Pointer)

C 中的智能指针(Smart Pointer)是用于管理动态内存分配的工具,它们能够自动管理资源的生命周期,避免内存泄漏。智能指针是 C11 标准引入的,通过模板类封装原生指针,实现资源的自动释放。主要的智能指针包括…

docker安装minio、使用springboot集成minio同时创建并设置minio桶仅可读

docker-compose安装minio,并设置挂载目录 version: 3.8services:minio:image: minio/miniocontainer_name: minioenvironment:MINIO_ROOT_USER: rootMINIO_ROOT_PASSWORD: 123456789restarts: alwaysprivileged: trueports:- "9000:9000"- "9001:90…

在 MySQL 8.0 中,SSL 解密失败,在使用 SSL 加密连接时出现了问题

在 MySQL 8.0 中,SSL 解密失败通常指的是在使用 SSL 加密连接时出现了问题,导致无法建立加密通信。这个问题可能由多种原因引起,下面是一些常见的原因和排查方法: 1. 证书配置问题 确保您在 MySQL 配置中使用了正确的 SSL 证书和…

GitCode光引计划有奖征文大赛

一、活动介绍 GitCode平台汇聚了众多杰出的G-Star项目,它们犹如璀璨星辰,用各自的故事和成就,为后来者照亮前行的道路。我们诚邀广大开发者、项目维护者及爱好者,共同撰写并分享项目在GitCode平台上托管的体验,挖掘平…

汽车共享管理:SpringBoot技术的应用与挑战

摘要 随着信息技术在管理上越来越深入而广泛的应用,管理信息系统的实施在技术上已逐步成熟。本文介绍了共享汽车管理系统的开发全过程。通过分析共享汽车管理系统管理的不足,创建了一个计算机管理共享汽车管理系统的方案。文章介绍了共享汽车管理系统的系…

深入理解AIGC背后的核心算法:GAN、Transformer与Diffusion Models

深入理解AIGC背后的核心算法:GAN、Transformer与Diffusion Models 前言 随着人工智能技术的发展,AIGC(AI Generated Content,人工智能生成内容)已经不再是科幻电影中的幻想,而成为了现实生活中的一种新兴力…

火山引擎数据飞轮模式下的线上营销:内容产出更智能、人群触达更精准

今年年中,中欧国际工商学院等机构联合发布《2023 年中国首席营销官(CMO)调查报告》(以下简称“报告”)。 报告基于 167 家企业营销决策者调研,指出在激烈的市场竞争下,企业倾向于加强“拓新”策…

MYSQL中的两种转义操作

在 MySQL 中,转义字符用于处理特殊字符,以防止语法错误或 SQL 注入攻击,而单双引号都是需要重点注意的字符 可以用转义符\ 和 两个连续的引号 来起到转义引号的作用 转义符转义: 这是users表中的数据 如果查询admin 或者 admin" 用户,可以用转义符\ 两个连…