# python xxx.py alex sb cp d:\内容回顾.py d:\a
# 重命名
# python 函数的相关.py alex sb rename C:/Users/Administrator/Desktop/小丁变优秀的代码/day25 C:/Users/Administrator/Desktop/小丁变优秀的代码/day22
# 创建文件夹
# python 函数的相关.py alex sb mkdir C:/Users/Administrator/Desktop/小丁变优秀的代码/day31
import sys
import os
import shutil
# print(sys.argv)
if len(sys.argv)>=5: #至少5个指令
if sys.argv[1]=='alex' and sys.argv[2]=='sb':
if sys.argv[3]=='cp' and len(sys.argv)==6:
if os.path.exists(sys.argv[4]) and os.path.exists(sys.argv[5]):
filename=os.path.basename(sys.argv[4])
path=os.path.join(sys.argv[5],filename)
shutil.copy2(sys.argv[4],path)
elif sys.argv[3]=='rm' and len(sys.argv)==5:
pass
print('已经删除了')
elif sys.argv[3] == 'mkdir' and len(sys.argv) == 5:
os.mkdir(sys.argv[4])
print(f'我们创建了{sys.argv[4]}的文件夹')
elif sys.argv[3]=='rename' and len(sys.argv)==6:
if os.path.exists(sys.argv[4]):
if os.path.isfile(sys.argv[4]):
os.rename(sys.argv[4],sys.argv[5])
else:
shutil.move(sys.argv[4],sys.argv[5])
else:
print('输入的命令无效')
class yuan():
def __init__(self,r):
self.r=r
def zhou(self):
return self.r*2*3.14
def mian(self):
return self.r**2*3.14
c=yuan(10)
print(c.zhou())
print(c.mian())
c=yuan(5)
print(c.zhou())
print(c.mian())
这个类有什么属性,用什么方法,大致的样子
不知道具体的属性对应的值
对象:之前所有的属性都明确了
python中 一切都是对象
int
float
dict
str
list
tuple
set
所有的对象都有一个类型 class A 实例化出来的对象的类型就是A类
123的类型是int/float
‘asdasd‘ 的类型是str
{} 类型是dict
alex=Person() 的类型是Person
小白=Dog() 的类型是Dog
类中的变量 是静态变量
对象中的变量只属于对象本身 每个对象有属于自己的空间来储存对象的变量
当时有对象面去调用缪一个属性的时候会优先在自己的空间中寻找,找不到的话再从对应的类中寻找
如果自己没有就引用类的 类没有的话就报错
对鱼类来说 类中变量所有的 对象都是可以读取的 并且读取的是同一份变量
class A:
Country="中国"
def __init__(self,name,age,country):
self.name=name
self.age=age
self.Country=country
def fucn1(self):
print(self)
def func2(self):pass
def func3(self):pass
def func4(self):pass
def func5(self):pass
a=A("aa",'83','a人')
b=A("bb",'83','b人')
a.country="日本人"
print(a.Country)
print(b.Country)
print(A.Country)
# a人
# b人
# 中国
class A:
Country="中国"
def __init__(self,name,age,country):
self.name=name
self.age=age
def fucn1(self):
print(self)
def func2(self):pass
def func3(self):pass
def func4(self):pass
def func5(self):pass
a=A("aa",'83','a人')
b=A("bb",'83','b人')
a.country="日本人"
print(a.Country)
print(b.Country)
print(A.Country)
#
# 中国
# 中国
# 中国
# 创建一个类
# class A:pass
# A.country=123
# print(A.country) #属性的增加
# print(A.__dict__,type(A)) #查看或引用
b=A()
class A():
count=0
def __init__(self,asas):
A.count += 1
pass
a=A('asda')
b=A('asdas')
b=A('asdas')
b=A('asdas')
b=A('asdas')
b=A('asdas')
b=A('asdas')
b=A('asdas')
b=A('asdas')
b=A('asdas')
print(A.count)
import os
def login(name,password,file='userinfo'):
with open(file,encoding='utf-8') as f:
user,pwd=f.readline().strip().split('|')
if name==user and pwd==password:
return True,name
else:
print("密码错")
return False
class User():
def __init__(self,username,password):
self.user=username
self.pwd=password
def change_pwd(self):
oldpassword=input("请输入原密码")
newpassword=input("请输入新密码")
with open('userinfo', encoding='utf-8') as f1,open('userinfo.bak', mode="w",encoding='utf-8') as f2:
for line in f1:
user, pwd = line.strip().split('|')
if user==self.user and pwd==oldpassword:
line='%s|%s\n'%(user,newpassword)
f2.write(line)
os.remove("userinfo")
os.rename("userinfo.bak",'userinfo')
name=input('用户名')
password=input('密码')
ret=login(name,password)
if ret:
print('登陆成功')
cet = User(name,password)
cet.change_pwd()
例
python22.course=python
python23.course=python
之前价格是2000
print(python22.course.money)
print(python23.course.money)
现在修改成3000
python.money=30000
print(python22.course.money)
print(python23.course.money)
# 学生类
# 姓名 性别 年龄 学号 班级 手机号
class Student:
def __init__(self,name,sex,age,number,clas,phone):
self.naem=name
self.sex=sex
self.age=age
self.clas=clas
self.phone=phone
class Clas:
def __init__(self,cname,begint,teacher):
self.cname=cname
self.begint=begint
self,teacher=teacher
爱上小丁=Clas("课程",'2019-03-12',"小丁")
小屋=Student("小屋","female",18,1,爱上小丁,13333333333)
print(小屋.clas,爱上小丁)
print(爱上小丁.begint)
# 一个类的对象是另一给类的属性
# 对象 变成了一个属性
#
# 爱上小丁 是一个对象
#
# 把他放到 小屋 这个类 里面 做一个对象
# 运用组合 将两个对象连接起来了
class Ke:
def __init__(self,timee,kecheng,money):
self.timee=timee
self.kecheng=kecheng
self.money=money
class Ban:
def __init__(self,kecheng):
self.kecheng=kecheng
python=Ke("100天",'python',20000)
linux=Ke("100天",'linux',10000)
python22=Ban(python)
linux11=Ban(linux)
print(python22.kecheng.money)
print(python.timee)
print(linux.money)
# 也可以这样实现
class Ke:
def __init__(self,timee,kecheng,money):
self.timee=timee
self.kecheng=kecheng
self.money=money
class Ban:
def __init__(self,kecheng):
self.kecheng=kecheng
python=Ke("100天",'python',20000)
linux=Ke("100天",'linux',10000)
python22=Ban('python')
linux11=Ban('linux')
python22.kecheng=python
print(python.money)
print(python.timee)
原文:https://www.cnblogs.com/xueba/p/12459552.html