【02python基础-函数,类】
1.函数中的全局变量与局部变量
全局变量:
在函数和类定义之外声明的变量。作用域为定义的模块,从定义位置开始到模块结束。
全局变量降低了函数的通用性和可读性,要尽量避免全局变量的使用。
全局边个两一般作为常量使用。
函数内改变全局变量的值要用global说明
局部变量:
在函数体内(包含形式参数)声明的变量。
局部变量的引用比全局变量快,有限考虑使用。
如果局部变量和全局变量同名,则在函数内隐藏全局变量,只是用同名的局部变量。(局部变量优先于全局变量)
2.类的定义
# 构造函数-类
class Student: # 类名一般为首字母大写,驼峰原则 def __init__(self, name, score): # self必须位于第一个参数
self.name = name
self.score = score def say_score(self): # self必须位于第一个参数
print("{0}的分数是:{1}".format(self.name, self.score)) s1 = Student("胡皓", 100) # 通过类名()调用构造函数
s1.say_score() s2 = Student("高希希", 99)
s2.say_score() # 程序员编写
Student.say_score(s2) # 解释器执行的时候
print(dir(s2)) # 获得所有的属性
print(s2.__dict__) # 获得定义的属性
print(isinstance(s2,Student)) # 判断类型
3.实例对象和属性
"""
实例属性:self.A=A 实例方法:1.定义实例方法时,第一个参数必须为self。和前面一样,self指的是当前的实例对象。
2.调用实例方法时,不需要也不能给self传递参数,self由解释器自动传参。
"""
class Student: # 类名一般为首字母大写,驼峰原则 def __init__(self, name, score): # self必须位于第一个参数
self.name = name # 实例属性
self.score = score # 实例属性 def say_score(self): # self必须位于第一个参数
print("{0}的分数是:{1}".format(self.name, self.score))
4.类对象和类属性
class Student:
company = "SXT"
count = 0 def __init__(self,name,score):
self.name = name
self.score = score
Student.count = Student.count + 1 def say_score(self):
print("我的公司是:",Student.company)
print(self.name,"的分数是",self.score)
s1 = Student("gxx",60)
s1.say_score()
【02python基础-函数,类】的更多相关文章
- C++进阶-1-模板基础(函数模板、类模板)
C++进阶 模板 1.1 函数模板 1 #include<iostream> 2 using namespace std; 3 4 // 模板 5 6 // 模板的简单实例 7 // 要求 ...
- 速战速决 (3) - PHP: 函数基础, 函数参数, 函数返回值, 可变函数, 匿名函数, 闭包函数, 回调函数
[源码下载] 速战速决 (3) - PHP: 函数基础, 函数参数, 函数返回值, 可变函数, 匿名函数, 闭包函数, 回调函数 作者:webabcd 介绍速战速决 之 PHP 函数基础 函数参数 函 ...
- python基础——定制类
python基础——定制类 看到类似__slots__这种形如__xxx__的变量或者函数名就要注意,这些在Python中是有特殊用途的. __slots__我们已经知道怎么用了,__len__()方 ...
- Python基础-类的探讨(class)
Python基础-类的探讨(class) 我们下面的探讨基于Python3,我实际测试使用的是Python3.2,Python3与Python2在类函数的类型上做了改变 1,类定义语法 Python ...
- python基础—函数装饰器
python基础-函数装饰器 1.什么是装饰器 装饰器本质上是一个python函数,它可以让其他函数在不需要做任何代码变动的前提下增加额外功能. 装饰器的返回值是也是一个函数对象. 装饰器经常用于有切 ...
- Python学习---基础函数的学习
1.1. 基础函数 函数是指将一组语句的集合通过一个名字(函数名)封装起来,要想执行这个函数,只需调用其函数名即可. 灌输一个概念:Python中函数就是对象,函数和我们之前的[1,2,3],'abc ...
- python基础,函数,面向对象,模块练习
---恢复内容开始--- python基础,函数,面向对象,模块练习 1,简述python中基本数据类型中表示False的数据有哪些? # [] {} () None 0 2,位和字节的关系? # ...
- springMVC基础controller类
此文章是基于 搭建SpringMVC+Spring+Hibernate平台 功能:设置请求.响应对象:session.cookie操作:ajax访问返回json数据: 创建springMVC基础con ...
- hibernate基础dao类
此文章是基于 搭建SpringMVC+Spring+Hibernate平台 功能:数据库的保存.更新.删除:sql.hql查询:分页查询:调用存储过程 创建hibernate基础dao类: BaseD ...
随机推荐
- JQ滚动加载
$(window).scroll(function () { if ($(document).scrollTop() + $(window).height() >= $(document).he ...
- C# DataTable与Excel读取与导出
/// <summary> /// Excel->DataTable /// </summary> /// <param name="filePath&q ...
- 大前端时代搞定PC/Mac端开发,我有绝招
如果你是一位前端开发工程师,对"跨平台"一词应该不会感到陌生.像常见的前端框架:比如React.Vue.Angular,它们可以做网页端,也可以做移动端,但很少能做到跨PC.Mac ...
- 读《大话设计模式》——应用策略模式的"商场收银系统"(WinForm)
策略模式的结构 这个模式涉及到三个角色: 环境(Context)角色:持有一个 Strategy 类的引用.抽象策略(Strategy)角色:这是一个抽象角色,通常由一个接口或抽象类实现.此角色给出所 ...
- 数据库04 /多表查询、pymysql模块
数据库04 /多表查询.pymysql模块 目录 数据库04 /多表查询.pymysql模块 1. 笛卡尔积 2. 连表查询 2.1 inner join 内连接 2.2 left join 左连接 ...
- Python面向对象05 /私有成员、类方法、静态方法、属性、isinstance/issubclass
Python面向对象05 /私有成员.类方法.静态方法.属性.isinstance/issubclass 目录 Python面向对象05 /私有成员.类方法.静态方法.属性.isinstance/is ...
- [jvm] -- 类文件结构篇
类文件结构 结构图 魔数 头四个字节,作用是确定这个文件是否为一个能被虚拟机接收的 Class 文件. Class 文件版本 第五和第六是次版本号,第七和第八是主版本号. 高版本的 Java 虚拟机 ...
- nginx 日志功能详解
nginx 日志功能 在 nginx 中有两种日志: access_log:访问日志,通过访问日志可以获取用户的IP.请求处理的时间.浏览器信息等 error_log:错误日志,记录了访问出错的信息, ...
- luoguP1036 选数 暴力AC题解
luoguP1036 选数 暴力AC题解(非正解) 俗话说得好:暴力出奇迹,打表拿省一. 对于一些暴力就能拿分的题,暴力就好啦QWQ 题目描述 输入格式 输出格式 输入输出样例 定义变量 我们令输 ...
- Python对列表去重的各种方法
一.循环去重 二.用 set() 去重 1.set()对list去重 2.list 是有序的,用 sort() 把顺序改回来 三.利用 dict 的属性来去重 1.用 dict 的 fromke ...