while True:
变量_主多选 = input("1:新建.2:显示.3:查找")
if 变量_主多选 in ["1", "2", "3"]:
if 变量_主多选 == "1":
pass #可以是语句,函数,模块等
if 变量_主多选 == "2":
pass
if 变量_主多选 == "3":
pass
elif 变量_主多选 == "0":
break
else:
print("您输入的不正确,请重新选择")
1:新建.2:显示.3:查找 1
1:新建.2:显示.3:查找 2
1:新建.2:显示.3:查找 3
1:新建.2:显示.3:查找 0
列表 = [ ]
#1 输入信息存入列表
姓名 = input("请输入姓名")
电话 = input("请输入电话")
住址 = input("请输入住址")
字典 = {"姓名": 姓名,
"电话": 电话,
"住址": 住址}
列表.append(字典)
print(列表)
请输入姓名 ken
请输入电话 166
请输入住址 西丰
[{‘姓名‘: ‘ken‘, ‘电话‘: ‘166‘, ‘住址‘: ‘西丰‘}]
#2 查看列表中全部信息
for k in 列表:
print(k)
{‘姓名‘: ‘ken‘, ‘电话‘: ‘166‘, ‘住址‘: ‘西丰‘}
#3 查找列表中信息
查询=input("请输入要查找的姓名")
for k in 列表:
if k["姓名"] == 查询: #查看索引对应的信息
print(列表)
else:
print(‘抱歉,没有找到‘)
请输入要查找的姓名 ken
[{‘姓名‘: ‘ken‘, ‘电话‘: ‘166‘, ‘住址‘: ‘西丰‘}]
#1 直接打印读取的信息
import os
列表=[]
读取 = os.listdir(‘0_pandas实战玩转数据分析‘)
print(读取) #直接打印读取的内容
[‘01 快速上手Pandas‘, ‘02 玩转Pandas索引‘, ‘03 Pandas清洗四板斧‘, ‘04 灵活的Apply函数‘, ‘05 Python批量处理Excel表格‘, ‘06 TGI指数分析实战‘, ‘07 RFM建模实战‘, ‘08 同期群分析实战‘]
#2 读取信息整体存入列表,并打印
列表.append(读取)
print(列表)
[[‘01 快速上手Pandas‘, ‘02 玩转Pandas索引‘, ‘03 Pandas清洗四板斧‘, ‘04 灵活的Apply函数‘, ‘05 Python批量处理Excel表格‘, ‘06 TGI指数分析实战‘, ‘07 RFM建模实战‘, ‘08 同期群分析实战‘]]
#3 读取信息遍历循环存入列表,并打印
for k in 读取:
列表.append(k)
print(列表)
#主意:因为上一个代码已经存入一批信息,因此此次列表中有两批信息
[[‘01 快速上手Pandas‘, ‘02 玩转Pandas索引‘, ‘03 Pandas清洗四板斧‘, ‘04 灵活的Apply函数‘, ‘05 Python批量处理Excel表格‘, ‘06 TGI指数分析实战‘, ‘07 RFM建模实战‘, ‘08 同期群分析实战‘], ‘01 快速上手Pandas‘, ‘02 玩转Pandas索引‘, ‘03 Pandas清洗四板斧‘, ‘04 灵活的Apply函数‘, ‘05 Python批量处理Excel表格‘, ‘06 TGI指数分析实战‘, ‘07 RFM建模实战‘, ‘08 同期群分析实战‘, ‘01 快速上手Pandas‘, ‘02 玩转Pandas索引‘, ‘03 Pandas清洗四板斧‘, ‘04 灵活的Apply函数‘, ‘05 Python批量处理Excel表格‘, ‘06 TGI指数分析实战‘, ‘07 RFM建模实战‘, ‘08 同期群分析实战‘]
#4直接遍历读取的内容
for k in 读取:
print(k)
#注意:因为是直接遍历的读取.没有读取列表中的两次信息,因此是一批信息
01 快速上手Pandas
02 玩转Pandas索引
03 Pandas清洗四板斧
04 灵活的Apply函数
05 Python批量处理Excel表格
06 TGI指数分析实战
07 RFM建模实战
08 同期群分析实战
#批量创建文件夹-文件名-文件内容
import os
for 遍历 in range(3): #1 range可以换成其他变量信息
os.makedirs(‘批量文件夹/批量‘+str(遍历)) #2 批量创建文件夹,并且根据遍历信息命名
f=open(‘批量文件夹/批量‘+str(遍历)+‘/‘+str(遍历)+‘.txt‘,‘w‘) #3 打开上一层文件夹,在其中创建相同变量信息的文件
f.write(str(遍历)) #4 写入遍历信息,或者其他变量信息
f.close()
import codecs #引入功能
import os
#读取函数
def 读取(文件名):
打开 = open(‘组合函数/‘ + 文件名 + ‘.txt‘,‘r‘,encoding=‘utf-8‘) #设定编码格式
读取=打开.readlines()
打开.close()
return 读取
读取(读取文件‘)
#犯错问题:总是提示ken不是变量,最后才知道,是在写入名称的时候没有用‘‘,因为写入的是字符
["[‘\\ufeff你好的和哦好和哦哈OA活动和哦‘]"]
#写入读取函数的信息
def 写入(文件名,读取信息):
打开文件=open(‘组合函数/‘ +文件名+ ‘.txt‘,‘a‘,encoding=‘utf-8‘) #设定编码格式
写入文件=打开文件.write(str(读取信息))
打开文件.close()
return 写入文件
写入(‘写入文件‘,读取(‘读取文件‘))
#犯错问题:读取和写入功能都正常运行,但是再返回去读取已经写入的 写入文件就是编码报错
#原因解决:就是读取的时候,打开文件按照utf-8读取的,但是写入文件的打开方式没有标注utf-8,
#所以在写入文件的打开方式中,也用utf-8方式打开,就可以通顺了
#1 普通格式-有返回值
def k(x,y):
return x*y #有return,可以外部打印_计算值
print(k(2,3))
6
#2 普通格式-无返回值
def k(x,y):
x*y
print(k(2,3)) #没有return,外部打印_值为空
None
# 一 匿名函数 lambda
k = lambda x,y:x*y
print(k(2,3)) #lambda直接赋值打印
6
# 二 两两计算函数map()
a=map(lambda x,y:x*y ,[1,2,3],[4,5,6]) # 1*4 , 2*5 , 3*6
print(list(a)) #结果要转换成列表格式
[4, 10, 18]
# 三 叠加计算函数reduce()
from functools import reduce #需要调用
a=reduce(lambda x,y:x*y ,[4,5,6]) # 4*5=20 , 20*6=120 叠加计算
print(a) #结果不需要转换成列表
120
# 四 条件筛选函数fiter()
a=filter(lambda x:x>4,[4,5,6]) #筛选掉不符合的
print(list(a)) #结果要转换成列表格式
[5, 6]
## while循环乘法表
行 = 1 #行取第一个值
while 行 <= 9: #行取最后一个值
列 = 1 #列取第一个值
while 列 <= 行: #列最后一个值和行相同
print("%d*%d=%d\t" % (行, 列, 行*列), end = "") #横向一行所有排列打印
#print("%d*%d=%d" % (row, col, row * col), end="\t")
列 += 1
print() # 单纯的换行 #打印第二行
行 += 1
1*1=1
2*1=2 2*2=4
3*1=3 3*2=6 3*3=9
4*1=4 4*2=8 4*3=12 4*4=16
5*1=5 5*2=10 5*3=15 5*4=20 5*5=25
6*1=6 6*2=12 6*3=18 6*4=24 6*5=30 6*6=36
7*1=7 7*2=14 7*3=21 7*4=28 7*5=35 7*6=42 7*7=49
8*1=8 8*2=16 8*3=24 8*4=32 8*5=40 8*6=48 8*7=56 8*8=64
9*1=9 9*2=18 9*3=27 9*4=36 9*5=45 9*6=54 9*7=63 9*8=72 9*9=81
‘‘‘运行说明
循环打印乘法口诀表,while 循环,for 循环
python中的print 打印函数默认自带换行,可以添加 第二参数 end = "" 来阻止换行。
‘‘‘
#%%for循环乘法表:
# 使用range函数 返回可迭代对象 进行计数处理 使用for循环
for i in range(1, 10): #设定行的取值范围
for j in range(1, i+1): #设定列的取值范围
print("%d*%d=%d\t" % (i, j, i*j), end="") #横向全部遍历打印
print() #遍历打印第二行
#输入成绩对比
a=int(input(‘请输入成绩:‘)) #输入第一次成绩
b=1
#第一次平时考试
for i in range(2,4): #第二次以后的考试
c=int(input(‘请输入成绩:‘)) #输入第二次以后成绩
if c>a: #如果第二次之后的数字大于第一次,
a,b=c,i #第二次的数值和次数变量替换第一次的
print(‘最高分是第‘,b,‘次的考试成绩‘,a,‘分‘) #输出被替换的成绩和考试次数
class 类: #第一部分:构造类
属性 = 12345
def 方法(self):
return ‘hello world‘
对象 = 类() #第二部分:类的实例化
print(对象.属性) #第三部分:访问类的属性和方法
print(对象.方法())
‘‘‘简单类说明:
1:类中的变量都叫_属性,函数都叫_方法
2:没有参数的类,不需要定义__init__方法和其中的属性
3:实例化的时候直接‘对象 = 类() ‘就可以了,之后就用对象调用类中的方法和属性
4:因为没有参数传递,因此方法中的信息要打印出来需要使用‘return‘
‘‘‘
12345
hello world
class 类:
def __init__(self,a,b,c): #构造变量传递_属性
self.a = a
self.b = b
self.c = c
def 方法1(self):
print(self.a,self.b,self.c) #使用上面定义的变量
def 方法2(self):
print(self.a)
对象1 = 类名(111,222,333) #实例化的时候,通过类名,将属性值传递进方法中使用
对象2 = 类名(444,555,666)
对象1.方法1()
对象2.方法2()
‘‘‘带参数的类说明:
1:__init__方法用来设定属性参数
2:可以实例化多个不同参数值的对象
‘‘‘
111
444 555 666
从某种意义上来说,类并不比函数更好。只是在某些情况下使用类能够更好的帮助我们写代码。
我们来看看其他程序员的理解
- 当我们拥有一堆`共享状态的函数`,或者将`相同的参数传递给每个函数`时,我们可以重新考虑代码使用类。
- 类的“可重用性”意味着我们可以在其他应用程序中重用之前的代码。如果我们在自己的文件中编写了类,则只需将其放在另一个项目中即可使其工作。
- 函数对于小型项目非常有用,但是一旦项目开始变大,仅使用函数就可能变得混乱。类是组织和简化代码的一种非常好的方法
- 通常,如果在函数内部找到自写函数,则应考虑编写类。如果我们在一个类中只有一个函数,那么请坚持只写一个函数。
- 如果需要在函数调用之间保留一些状态,那么最好使用带有该函数的类作为方法
1 操作顺序:建立类-定义类中方法,设置方法中属性,实例化生成对象,调用对象
2 类组成结构:模块-类型-对象-方法-属性
3 使用方法:
dir() 查询一个类或者对象的所有属性
help() 了解模块-类型-对象-方法-属性的详细信息
1 帮助查看类型详细信息,包含类的创建方式,属性,方法
2 帮助查看方法的详细使用信息(使用时要注意输入完整路径,使用模块帮助时,需要
先导入模块)
原文:https://www.cnblogs.com/pythonsql/p/14605536.html