前往小程序,Get更优阅读体验!
立即前往
发布
社区首页 >专栏 >[oeasy]python073_下划线在python里是什么含义_内部变量_私有变量_系统变量

[oeasy]python073_下划线在python里是什么含义_内部变量_私有变量_系统变量

原创
作者头像
oeasy
发布2025-03-12 18:21:29
发布2025-03-12 18:21:29
60
举报
视频封面
视频封面

上传视频封面

好的标题可以获得更多的推荐及关注者

导入import 回忆上次内容

  • 上次直接从模块中导入变量、函数
  • from my_file import pi
  • 导入my_file.pi
  • 并作为 pi 使用
  • from my_file import pi as my_pi
  • 导入变量 并 重命名

添加图片注释,不超过 140 字(可选)

  • 为什么 从模块中导入的变量 需要改名呢???🤔

冲突(local name clashes)

  • 回忆 冲突现场

from math import pi as math_pi from my_file import pi as my_pi print(locals())

  • 为了避免
  • local name clash
  • 本地变量名 冲突

添加图片注释,不超过 140 字(可选)

  • python帮助 里
  • 是怎么说的 呢?

pep8

添加图片注释,不超过 140 字(可选)

  • 因此 要特别注意
  • 不要使用from xxx import *
  • 因为
  • 这样 会把模块里面
  • 所有的变量 导入进来
  • 特别容易 冲突
  • local name clashes
  • 这怎么理解呢?

做个测试 :e test.py

  • 导入 random中所有变量

from random import * print(dir())

  • 结果 导入了很多成员变量

添加图片注释,不超过 140 字(可选)

  • 是不是都导入进来了呢?

观察模块目录 from random import * print(dir()) import random print(dir(random))

  • 有一些变量没有被导入进来

添加图片注释,不超过 140 字(可选)

  • 这些变量以下划线(_)开头
  • 是 模块的 内部变量
  • 为什么 下划线开头
  • 就是 内部变量 呢?

寻找主题

  • 去游乐场

help("topics")

  • 查看帮助主题

添加图片注释,不超过 140 字(可选)

  • 应该找的主题是
  • 标识符
  • identifiers

标识符 help("IDENTIFIERS")

  • 找到标识符的帮助

添加图片注释,不超过 140 字(可选)

  • 看到PEP3131
  • 回忆 中文 可以作为 变量名

翻页

  • ctrl+f
  • 向后翻页

添加图片注释,不超过 140 字(可选)

  • 举个例子来说明

理解内部

  • from random import *
  • *代表所有的
  • 非下划线开头的变量

添加图片注释,不超过 140 字(可选)

  • 在random模块中 有很多变量和函数
  • 非下划线开头的 可以被导入进来
  • 下划线开头的 不能被导入进来

添加图片注释,不超过 140 字(可选)

  • 导入进来的
  • 都是 没有 下划线的
  • 如果 就想要
  • 导入 带下划线的 内部变量 呢?

点名道姓 from random import _e

  • 指定好那个变量的名字
  • 就可以

添加图片注释,不超过 140 字(可选)

  • 我就想要引入_e这个内部变量
  • 有下划线开头的变量
  • 是隐藏变量
  • 需要点名导入

变量

  • 点名 导入
  • 带下划线的 隐藏变量
  • 就可以了

添加图片注释,不超过 140 字(可选)

  • 变量名 前面
  • 加下划线
  • 指的是 模块内部变量
  • 如果在 变量名 后面
  • 加 下划线
  • 又是 什么意思 来着?

回忆命名法中的下划线

  • 避免和函数、模块 重名

max_ = max(5, 6)

  • 再回顾我们使用的是
  • Snake Naming Convention
  • 蛇形命名法
  • 综合下划线的使用情况

位置和数量

作用

例子

单个下划线

上次表达式的值

_

一个放前面

隐藏变量

_e

一个放后面

避免名字冲突

max_

一个放前边

私有属性

__attribute

两个放两边

系统变量

__builtins__

总结

  • 这次总结 下划线 用法

添加图片注释,不超过 140 字(可选)

  • 想写个 实用点儿的程序??🤔
  • 下次再说 👋

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档