#学习的课程是跟随着 网易云课堂中  同时推荐一下 这个课程不错哦
http://study.163.com/course/courseMain.htm?courseId=1004106037  老师学习的基础部分import  pprint
# import  re
# //输入函数的学习----------------------------
print("你好啊!你叫啥呢")
myName=input()
print("你的年纪是什么?"+myName)
print("你名字的长度是"+str(len(myName)))# format {}  占位符的学习-----------------------
rmd=input("您需要转化的人民币的币值是多少:")
rmd=int(rmd)
cny=rmd*6
print("金输入的人民币是 {0} 经过转化后的数值是{1}元".format(rmd,cny))# input在输入中取到多个函数split()  分隔符的函数
num1,num2=input("请输入两个数:").split( )
print("{}是输入的第一个数  {}是输入的第二个数".format(num1,num2))# if函数语句 :要有冒号--------------------------
name=input("请输入你的名字")
if name == 'wangfeng':print("你是是我要找的人")
else:print("你不是我要找的人")
name = 'luren'if name == 'python':         # 判断变量否为'python'flag = True          # 条件成立时设置标志为真print ('welcome boss' )   # 并输出欢迎信息
else:print (name)             # 条件不成立时输出变量名称# 测试 条件语句-------------------------------------
ceshi1="ceshi1"
ceshi2=1
ceshi3=3.6
if(ceshi1=="1"):print("111")
elif ceshi2==3:print("222")
elif ceshi3==3.1:print("33333")
else:print("4444444444")# 加减乘除--------------------------------------------
num1,fuhao,num2=input("请输入你要计算的数:").split()
num2=int(num2)
num1=int(num1)
if fuhao=="+":print("{}{}{}={}".format(num1, fuhao, num2, num1 + num2))
elif fuhao=="-":print("{}{}{}={}".format(num1, fuhao, num2, num1 - num2))
elif fuhao=="*":print("{}{}{}={}".format(num1, fuhao, num2, num1 * num2))
# elif fuhao=="/":
#     print("{}{}{}={}".format(num1, fuhao, num2, num1 / num2))# 适应 and or 判断语句---------------------------------------
age=int(input("请输入你得年纪"))
if age>0 and age<=18:print("你是少年")
elif age>18 and age<50:print("你是青年")
elif age>50:print("知天命")
age=int(input("请输入你得年纪"))
if age==0  or age==1:print("你是少年")
elif age==2 or age==3:print("你是青年")
elif age==4:print("知天命")
num1,num2=input("请输入数 进行测试:").split()
print("{}是你输入的第一个数,{}是你输入的第二个数".format(num1,num2))# 循环列表
for i in [1,2,3,4,5,6]:print("{} ==shu".format(i))for i in range(5):print("这个数是",i)for i in range(1,5):print("这个数是=",i)for i in range[1, 5]:print("这个数是=", i)
# 以2递增
for i in range(1, 10 ,2):print("这个数是=", i)
# 以-2递减    包括前面 不包括后面数的范围
for i in range(10, -10 ,-2):print("这个数是=", i)# 计算1--100的数的和
numall=0
for i in range(101):numall=numall+iif i==100:print("1-100的和是:",numall)# 取到1--20里面的奇数
num=20+1
for i in range(num):if i%2==1:print(" {}  ,他范围是:{}".format(i,num))
num=20+1
for i in range(1,21):if i%2==1:print(" {}  ,他范围是:{}".format(i,num))# 控制小数点的方法   {:.2f}
money=input("输入你的本金:")
lilv=input("请输入利率:")
time=input("你的年数")
allmoney=0
for i in range(0,int(time)):allmoney=int(money)*float(lilv)+allmoneyprint("你储存的钱是:{},时间是:{}年,利率是:{},最后的金额是:{:.2f}".format(money,time,lilv,allmoney))# while 循环 条件不是0 或者空None  都认识是真
num=0
while num<5:print("这是第{}次".format(num))num=num+1name=""
while name!="you name":print("请输入你的名字:")name=input()
print("正确")# continue 的用法跳出一次循环
num1=1
while num1<=5:num1=num1+1if num1==5:continueprint("这个数是==",num1)# break 是直接跳出整个的这个循环
while 1:name=input("请输入你的名字")if name=="wangfeng":break
print("你就是我们要找的人")# 适应continue yu break 打印出 1-20内的奇数
num=1
while num<20:num+=1if num%2==0:continueprint("奇数是",num)if num==20:print("检测到了20 我们跳出循环")break#打印出下面的额形状#########################num=int(input("你想打印多少行:"))
for i in range(1,num):print("{}{}".format(" "*(num-i),"#"*(i*2-1)))# 关于字符串的切分
samp_string="what are ok? you are a good bay"
# 字符的长度
print("这个句{}的长度是:{}个字符,包括空格".format(samp_string,len(samp_string)))# 取到第几个字符
print("这句话是{},我们取到他的前4位 分别是{}".format(samp_string,samp_string[5]))# 取到从句子的后面数第几个字符
print("这句话是{},我们取到他的前4位 分别是{}".format(samp_string,samp_string[-3]))# 打印出虎所有的字符 加上分号 凡是不指定
print("这句话是{},我们取到他的前4位 分别是{}".format(samp_string,samp_string[:]))# 也是不包括本位  也就是下面例子中 5 不包括第五位 是开区间
print("这句话是{},我们取到他的前4位 分别是{}".format(samp_string,samp_string[0:5]))# 一个字符位置之后的所有字符
print("这句话是{},我们取到他的前4位 分别是{}".format(samp_string,samp_string[8:]))# 打印出虎所有的字符 加上分号 凡是不指定
print("这句话是{},我们取到他的前4位 分别是{}".format(samp_string,samp_string[::]))# 打印出每相隔的1个字符
print("这句话是{},我们取到他的前4位 分别是{}".format(samp_string,samp_string[::2]))# 打印出从后往前打印
print("这句话是{},我们取到他的前4位 分别是{}".format(samp_string,samp_string[::-1]))# 打印出从后往前打印 每个相隔2个字符
print("这句话是{},我们取到他的前4位 分别是{}".format(samp_string,samp_string[::-2]))
#
# # 直接打印
print("i did,did i"[::-1])# 便利字符串的字符
samp_string="what are ok? you are a good bay"
for i in samp_string:print(i)
for i in range(0,len(samp_string)-1):print(samp_string[i]+samp_string[i+1])# 字符编码之间的转化
print("{}=={}".format("A",ord("A")))
print("{}=={}".format(65,chr(65)))
a:int =1
print(a)# 对字符转的使用方式 lstrip  rsplit
samp_string="      what are ok? you are a good bay     "
print("这句话是{},我们要实现的是将这句话的钱面的空格删除掉,删除掉之后是这样的{}.".format(samp_string,samp_string.lstrip()))
print("这句话是{},我们要实现的是将这句话的后面的空格删除掉,删除掉之后是这样的{}.".format(samp_string,samp_string.rstrip()))
print("这句话是{},我们要实现的是将这句话的所有的的空格删除掉,删除掉之后是这样的{}.".format(samp_string,samp_string.rsplit()))# 使用"   ".join() 讲一个数组连接起来 使用"   "空号
samp_list=samp_string.rsplit()
print(" ".join(samp_list))samp_string.count("a") samp_string.find("a")
samp_string="what are ok? you are a good bay"
print("这句话是{},其中有a字母一共{}个,第一个的位置分别是{}".format(samp_string,samp_string.count("a"),samp_string.find("a")))str=input("请输入数据 仅限于字母:")
str=str.upper()
str_zhuzu=str.split()
for i in str_zhuzu:j=0j=j+1print("我是第{}个,我的全拼是{},我的第一个大写字符是{}".format(j,i,i[0]),end='')
print(str)# 加密
ord('A')
ord('a')
chr(65)
print(ord('A'),ord('a'),chr(65))
for i in range(65,97,1):print(chr(i))
#
# 数列
list_1=["ceshi1",1,2,3,4,5,6]
print(list_1)
oneToten=list(range(65,90))
print(oneToten)
# 数组类型需要提前进行声明
AtoZ=[]
for i in range(65,91):AtoZ.append(chr(i))
print("{}    长度{}".format(AtoZ,len(AtoZ)))for i in range(len(AtoZ)):print("{}".format(AtoZ[i]))allstrList=AtoZ+oneToten+list_1
print("{}".format(allstrList))# print("切片{}  测试负向索引单个数组={}   负向索引多个元素{}".format(list_1[0:3],list_1[-1],list_1[4,-1]))#倒序打印
print( list_1 [-1:0:-1])#检测数组中是否存在这个元素
print("string" in list_1)
#一个元素在列表中的第几个
print(list_1.index("ceshi1"))#罗马函数import randomstr=random.randrange(1,50)
print(str)# 用列表自带的函数进行排序
#建立一个空数组
numList=[]
# 循环10次
for i in range(10):# 加入随机数numList.append(random.randrange(0,10))print("为未进行排序的数组={},排序后的数组={}".format(numList,numList))
# 插入元素  第几个 插入什么
numList.insert(2,10)
print(numList)
# 删除元素中的哪一个
numList.remove(10)
print(numList)
# 删除元素中的第几个
numList.pop(0)
print(numList)
# 自带排序  值排序 不改变原来的元素位置
print(sorted(numList))
print(numList)
# 将列表中的元素进行排序  直接修改列表
numList.sort()
print(numList)nList=[i*2  for i in range(1,10)]
print(nList)lList=[pow(i,2) for i in nList]
print(lList)# 多为数组
lList=[[pow(i,2),pow(i,3),pow(i,4)] for i in lList ]for i in lList:print(i)
# 二维列表中的元素的访问   [][]  第一个是行  第二个是行的第几个
lList[0][1]=100
for i in lList:print(i)listX=[[0]*10 for i in range(9)]# 乘法口诀
for i in range(9):for j in range(9):# listX [i][j]listX[i][j]="{}*{}={}".format(i+1,j+1,(i+1)*(j+1))#  print("{}*{}={}".format(i+1,j+1,(i+1)*(j+1)))
for i in listX:print(i)for i in range(9):for j in range(9):print((listX[i][j]))# 引入读取world模块
import docx# --------------------------函数# 1 不带返回函数的
def not_banck():print("这是在测试不带返回参数的函数!")
# 调用一下
not_banck()# 带返回参数的函数
def back_1_more(num1,num2):return num1+num2
print("1+2=",back_1_more(1,2))# 带不确定个个数的参数返回
def backWekownNum(*range):sum = 0for i in range:sum+=ireturn sumprint("测试不确定个数的入参",backWekownNum(1,2,3,4,5))# -------------------------------字典# 字典的创建 这就是一个空字典
friend_dic={}# 往字典中添加元素  1-直接添加既可以了 但是键与值之间使用: 号  元素与元素中之间使用,号隔开
friend_dic={'name':'waHaha',"age":'18'}
print(friend_dic)# 2中添加的方式是
friend_dic['ads']='qiuxian'
print(friend_dic)# 更改字典的值
friend_dic['ads']='xian'
print(friend_dic)# 只取到 键
print(friend_dic.keys())# 只取到 值
print(friend_dic.values())# 通过键取到值
print(friend_dic['name'])# 加测一个键在不在这个字典中  存在就是true 不存在就是false
print("friend_dic 中是否存在一个键是 地址=", 'ads' in friend_dic.keys())# 是检查键
print("friend_dic 中是否存在一个键是 地址=", 'xian' in friend_dic) # 默认是检查键
print("friend_dic 中是否存在一个键是 地址=", 'xian' in friend_dic.values())# 是检查值 必须要加上.values()# 另外一种检测是不是存在 但是只是检测是这个字典是不是存在这个键  存在的话 打印出来 不存在的话打印后面的
print(friend_dic.get("name","不存在"))
print(friend_dic.get("waHaha","不存在"))# 删除字典指定的键
del friend_dic['ads']
print(friend_dic)#请空指定的字典
friend_dic.clear()
print(friend_dic)# 检测有没有这个键 没有的话就添加 有的话就覆盖
friend_num={}
friend_num.setdefault("ipone",12313)
friend_num.setdefault("name",'wangfeng')
print(friend_num)# 将一段话中的每一个的单词放在一个字典之中  或者一个数组之中  计算出这句中 邮寄的相同的字符
content={}
i=1
wtingweisay="我是个一好孩子呢,你信不信!不管你信不信我都是一个好孩子!"
for worid in wtingweisay:# 检测字典中是不是存在这个数据 是的话 就只需要在后面的数据值中通添加1if (worid in content.keys()):# 取出统计数值i=content.values()# 将统计过的数值+1# print(content[worid])v=int(content[worid])+1# 将数值放在后面content[worid] =velse:# 没有的额话就后面的额统计就是一  有的话 后面的统计就不是就+1content.setdefault(worid,"无")content[worid] = 1print(content)
pprint.pprint(content)# 明老师大家要出去郊游 但是大家的拿的东西都不太一样 所以需要统计一下 显示一下小朋友们拿了那些说过,及其数量是多少
allcontent={"wang":{"苹果":3,"梨":1},"zhang":{"桔子":5,"梨":8},"li":{"苹果":2,"香蕉":6}}
# 统计数量的字典
allCON={}for key_ in allcontent:print(allcontent[key_])for name in allcontent[key_]:if(name in allCON.keys()):# 将之前的这个水果的数量取到 然后将数量进行添加 从而进行统计出总的数量s =int(allCON[name])v=s+int((allcontent[key_])[name])print(" 名字{}  数量{} | 添加后的数量{}  ".format(name,s,v))allCON[name]=v# 将水果的不存在的的种类添加进来else:allCON[name]=(allcontent[key_])[name]pprint.pprint(allCON)# -----对于集合的学习 集合(set)是一个无序不重复元素的序列
basket = {'apple', 'orange', 'apple', 'pear', 'orange', 'banana'}
print(basket)
# 创建一个空集合
kong_jige=set()
print(kong_jige)
# 打印字符串中的每一个元素
kong_jige=set("1541610daasdasd asdasdasd")
print(kong_jige)# 检测集合中是不是存在一个一个数据  与字典的检测方式相同
if "apple" in basket:print("basket中存在这个数据")
else:print("basket不中存在这个数据")# 在集合中添加元素
kong_jige.add("add")
print(kong_jige)
# 删除集合中的一个元素
kong_jige.discard("add")
print(kong_jige)# 集合的并集与交集 减
jihenum1={1,2,3,4,5}
jihenum2={3,4,5,6,7}
print("集合的并集{}  集合的交集{}  ".format((jihenum1|jihenum2),(jihenum1&jihenum2)))
print("建 {}".format(jihenum1-jihenum2))#往一个集合中添加一个集合
jihenum3={10,20,30,40}
jihenum2.update(jihenum3)
print(jihenum2)# 将字典中的数据添加转化为集合
ddic={"w":1,"e":1,"r":1,"t":1,"y":1}
ceshi_jige=set(ddic.keys())
print(ceshi_jige)
ceshi_jige=set(ddic.values())
print(ceshi_jige)# --------------------文件的读取与操作  但是使用下面这种我们需要jainghu文件读取完毕之后还入得输 进行关闭
TEXT_IO = open("H.txt", mode="r")
# 将本地的文件读取出来  选择读取的模式
content= TEXT_IO.read()
print(content)
#读取文件的状态进行显示
print(TEXT_IO.closed)
# 关闭读取文件的状态
TEXT_IO.close()
# 打印文件读取的状态
print(TEXT_IO.closed)# 下面的一种关于文件的读与写的方式# 直接用'a' 不能创建文件,只能打开已经存在的文件然后在后面添加新的内容。  这个是据需添加新的内容 add
with open("H.txt",mode="a")as H:H.write("  bb ")# string写到一个文件里,那么第一句必须用'w'参数先创建一个文件  w 会将之前的文件全部覆盖掉 write
with open("Ha.txt",mode="w")as Ha:Ha.write(" bb  ")# 讲一个文件中的数据读取出来   "r"是读取 read
with open("Ha.txt", mode="r")as Ha:print("ceshi duqu="+Ha.read())# 对一个文件即读取有进行写入 r+  这样的写去不是覆盖
with open("Ha.txt",mode="r+")as Ha:print("读取 前="+Ha.read())print(Ha.tell())Ha.write("wwwwwww")print(Ha.tell())Ha.seek(0)print("读取 后="+Ha.read())# 创建文件同时 读取的时候显示个数字符进行读取with open("Haa.txt",mode="w")as haa:haa.write("aaaaaaaaa""sssssssss""dddddddddd""fffffffffffffff")# 在read中加入参数 我们就可以控制读取的字符的数量
with open ("Haa.txt")as haa:print(haa.read(2))print(haa.read(2))print(haa.read(2))# 中文的写入与读取
with open("chance.txt",mode="w",encoding="utf-8")as c:c.write(''''人生若只如初见,何事秋风悲画扇。等闲变却故人心,却道故人心易变。骊山语罢清宵半,泪雨零铃终不怨。何如薄幸锦衣郎,比翼连枝当日愿。''')# 读取二进制的文件# 二进制 第一个案例 复制一张图片  每次以1024位单位  进行复制图片   在关键字 rb  wb 加一个b代表室二进制
with open ("temp.jpg",mode="rb")as tep:with open("temp_.jpg", mode="wb")as tep_:a = 1024b=tep.read(a)while len(b)>0:tep_.write(b)b = tep.read(a)# print(tep.tell())# 直接将所有的所有的数据进行储存然后复制
with open ("temp.jpg",mode="rb")as tep:with open("temp_1.jpg", mode="wb")as tep_:print(tep.tell())a=tep.read()tep_.write(a)print(tep.tell())# 复制歌曲  直接复制 不进行循环
with open("zhui.mp3",mode="rb")as zhui:with open("zhui_1.mp3",mode="wb")as zhui_:a=zhui.read()zhui_.write(a)with open("zhui.mp3",mode="rb")as zhui:with open("zhui_1.mp3",mode="wb")as zhui_:a=1024b=zhui.read(a)while len(b)>0:zhui_.write(b)b=zhui.read(a)#  引入一个模块进行数据的读与写---------------------这个好处是是我们可以把协议变量储存在本地 防止突然停电或者这段程序运算完了之后数据就会丢失,坏处是在wind中将是3中文件,同时文件我们不能之间看出来储存为内容
import shelve
# 首先定义个一个变量  一个文件的名字
shelavee=shelve.open("Menn")dic={"青果":1,"青颗":2,"青柠檬":3,"青芒果":4,"青菜":5,"青果":6,"青梅":7,"青草":8}
dic_={"小青果":1,"小青颗":2,"小青柠檬":3,"小青芒果":4,"小青菜":5,"小青果":6,"小青梅":7,"小青草":8}
# 将数据写入到文件之中去   储存的时候是相似key:values的方式进行储存  读取的时候也是这样的方式读取与显示
shelavee["shelvaa"]=dic
shelavee["shelvab"]=dic_
# 读取本地文件中相对应的数据
print("只是单独的显示出来在个文件之中储存的数据{}".format(shelavee["shelvaa"]))
print("只是单独的显示出来在个文件之中储存的数据{}".format(shelavee["shelvab"]))
# 读取本地文件中相对应的数据
print("只是单独的显示出来在个文件之中储存的数据keys{}".format(shelavee.keys()))
print("只是单独的显示出来在个文件之中储存的数据values{}".format(shelavee.values()))
#  显示出来本地储存的数据以列表的方式
print("在这边进行显示相关的数据keys 不过用列表的方式显示出来{}".format(list(shelavee.keys())))
print("在这边进行显示相关的数据values 不过用列表的方式显示出来{}".format(list(shelavee.values())))# 引入一个模块 把他写入到.py的文件之中 这样我们就可以时时的看到里面储存的内容了-----因为如果我们需要储存一个数据 但是这个诗句类型是字典 列表 集合的话  我们使用正常的写入方法是没有办法写入的 所以我们现在需要将一个数据传化成为字符串的话 那就字典 列表 集合就可进行储存了
import  pprint
dic={"青果":1,"青颗":2,"青柠檬":3,"青芒果":4,"青菜":5,"青果":6,"青梅":7,"青草":8}
listt=[1,2,2,2,2,3,32,3,23,23,245,5,1]
jihe={1,2,2,2,2,3,32,3,23,23,245,5,1}
# 打印出来的格式是字典<class 'dict'>
print("打印出来的格式是{}  打印内容{}".format(type(dic),dic))
# 打印出来的格式是列表<class 'list'>
print("打印出来的格式是{}  打印内容{}".format(type(listt),listt))
# 打印出来的格式是集合<class 'set'>
print("打印出来的格式是{}  打印内容{}".format(type(jihe),jihe))
# pprint.pformat 方法可以将之前字典或者其他的数据已字符串的形式进行 输出  <class 'str'>
s=pprint.pformat(dic)
s1=pprint.pformat(listt)
s2=pprint.pformat(jihe)
print(type(s))
print("打印出来的格式是{}  打印内容{}".format(type(s),s))
print("打印出来的格式是{}  打印内容{}".format(type(s1),s1))
print("打印出来的格式是{}  打印内容{}".format(type(s2),s2))# 这个就是例子 不可活除了字符串之外的任意格式--下面例子被打开的话  会报错
# with open("Haaaa.txt",mode="w")as Haaaa:
#     Haaaa.write(dic)with open("Haaa.py",mode="w",encoding="utf-8")as Haaa:Haaa.write(s)# 我们还可以将自己需要的数据放在.py文件之内,里面的内容我们就可以进行引用了  自制引用模块
import  pprint
dic={"青果":1,"青颗":2,"青柠檬":3,"青芒果":4,"青菜":5,"青果":6,"青梅":7,"青草":8}
dic_={"小青果":1,"小青颗":2,"小青柠檬":3,"小青芒果":4,"小青菜":5,"小青果":6,"小青梅":7,"小青草":8}
listt=[1,2,2,2,2,3,32,3,23,23,245,5,1]
jihe={1,2,2,2,2,3,32,3,23,23,245,5,1}
s=pprint.pformat(dic)
s1=pprint.pformat(dic_)
s2=pprint.pformat(listt)
s3=pprint.pformat(jihe)
with open("impor_num.py",mode="w",encoding="utf-8")as Haaa:Haaa.write("di="+s+"#写入的时候需要时个完成的字典格式 有名字={内容} 这样更容易去取到相应的数值 \n")Haaa.write("dic="+s1+"#写入的时候需要时个完成的字典格式 有名字={内容} 这样更容易去取到相应的数值 \n")Haaa.write("listt="+s2+"#写入的时候需要时个完成的列表格式 有名字={内容} 这样更容易去取到相应的数值 \n")Haaa.write("jihe="+s3+"#写入的时候需要时个完成的集合格式 有名字={内容} 这样更容易去取到相应的数值 \n")# 我们在File->ssting->Project unititled2-> Preject Interperter->在右上角的设置按钮->show Add->选择有你右边那一数列中+ - 笔 漏斗 还有个 show paths for selected interperter 这个选项 将自己的需要引用的模块路径选择一下
import impor_num
print("打印一下 引用问文件中的数据dic{}".format(impor_num.dic))
print("打印一下 引用问文件中的数据dic_{}".format(impor_num.dic_))
print("打印一下 引用问文件中的数据{}".format(impor_num.dic))
print("打印一下 引用问文件中的数据{}".format(impor_num.dic))# --------------关于报错的截取的处理  python中出现了报错 会出现程序垮掉  所以为了处理垮掉的问题  我们需要使用 try except进行处理
# 下面的额例子是会报错的例子  打开注释会报错 报错为  ZeroDivisionError:
def spam(num):return  42/numprint(spam(1))
print(spam(2))
print(spam(0))
print(spam(3))# 解决报错处理的问题   上述的问题
def spam(num):try:return 42/numexcept ZeroDivisionError:print("在参数是{}中报了错".format(num))
print(spam(1))
print(spam(2))
print(spam(0))
print(spam(3))#   读取一个不存在的文件 这个时候会报错 错位为 FileNotFoundError:  不同的错误报错不一样 所以我们有一个笼统的报错关键字Exception
# f=open("ceshi.txt")#打开注释会报错
# print(f.read())
try:f=open("ceshi.txt")
except Exception:print("文件读出出现了错误")try:f=open("ceshi.txt")
except FileNotFoundError:print("文件读出出现了错误")#捕捉到了具体的错误
except:#不知道出现了什么错误 我们需要一些错误显示出来print("出现了错误")# 如果读取 try 没有错误 则执行 else 后面的代码段  有错误则执行  except 的代码段  finally不管有没报错 会执行
try:f=open("H1.txt")
except FileNotFoundError as a:  #机上了as 之后的 就会将错误信息取出来  付给变量 aprint("精准报错 找不到文件  系统给出来的错误{}".format(a))
except:print("笼统报错 出现错误")
else:print(f.read())f.close()
finally:print("测试finally的作用")#--------程序报错的错误例子 2 raise的使用  使用了这个之后便  很将自己的错误提取出来  同时走到了raise 之后函数便不会再继续往后走了def boxP(symbol,width,height):if len(symbol)!=1:raise Exception("输入的图形只能是一个!. ")if width<=2:raise Exception("输入的图形宽度需要大于2. ")if height<=2:raise Exception("输入的图形宽度需要大于2. ")print(symbol * width)for i in range(height-2):print(symbol+" "*(width-2)+symbol)print(symbol * width)for sys,w,h in (("*",5,3),("z",6,5),("y",5,2),("*",3,2)):try:boxP(sys,w,h)except Exception  as  b  :print("err:{}".format(b))# ---------------------关于打印的使用-----使用logging模块import logging
# 格式的书写  logging.disable(logging.CRITICAL)  是取消全文的打印
# logging.disable(logging.CRITICAL)#打印的格式                                     时间          报错层级        第几行         具体打印日志
logging.basicConfig(filename="bug.txt", level=logging.DEBUG,format="%(asctime)s - %(levelname)s - %(lineno)d - %(message)s")def add_1():totall = 1logging.debug("打印开始")for i in range(0, 10):totall= totall + ilogging.debug("当前是第几个i={}  当前的和是={}".format(i,totall))logging.debug("打印结束")add_1()

python基础学习记录相关推荐

  1. Python基础学习笔记之(一)

    Python基础学习笔记之(一) zouxy09@qq.com http://blog.csdn.net/zouxy09 前段时间参加微软的windows Azure云计算的一个小培训,其中Pytho ...

  2. Python 基础学习笔记 03

    Python基础系列 Python 基础学习笔记 01 Python 基础学习笔记 02 Python 基础学习笔记 03 Python 基础学习笔记 04 Python 基础学习笔记 05 文章目录 ...

  3. Python基础学习教程:如何用Python来写pm2.5空气质量查询程序

    今天就教大家用之前有跟大家分享过的python基础学习教程完成首个MVP,如何用CLI(command-line interface,命令行界面)来执行第一个空气质量查询程序. 知识点 如何进行txt ...

  4. python自学用什么书好-适合python基础学习的好书籍

    分享几本python基础学习的书籍给大家 <Python编程:从入门到实践> 内容简介:本书是一本针对所有层次的Python 读者而作的Python 入门书.全书分两部分:第一部分介绍用P ...

  5. python心得体会-终于懂得python基础学习心得

    为了提高模块加载的速度,每个模块都会在__pycache__文件夹中放置该模块的预编译模块,命名为module.version.pyc,version是模块的预编译版本编码,一般都包含Python的版 ...

  6. python开发需要掌握哪些知识-Python基础学习需要掌握哪些知识

    1.1Python的对象 python的内置对象类型有很多,包括数字,字符串,列表,集合,元组,字典等等,在Python中,一切皆对象 pickle腌制--在Python中,如果有一些对象需要持久性存 ...

  7. Python基础学习-Python中最常见括号()、[]、{}的区别 2015-08-13 07:54 by xuxiaoxiaoxiaolu, 1138 阅读, 0 评论, 收藏, 编辑 Pytho

    Python基础学习-Python中最常见括号().[].{}的区别 2015-08-13 07:54 by xuxiaoxiaoxiaolu, 1138 阅读, 0 评论, 收藏, 编辑 Pytho ...

  8. python基础学习_转行零基础该如何学习python?很庆幸,三年前的我选对了

    这似乎是一个如荼如火的行业,对于一直在思考着转行的我,提供了一个不错的方向. 这个行业当然就是python程序员,真正开始决定转行是在24岁的时候,到现在已经有三年多了,我从零开始,每天用业余两个小时 ...

  9. Python基础学习笔记三

    Python基础学习笔记三 print和import print可以用,分割变量来输出 import copy import copy as co from copy import deepcopy ...

最新文章

  1. Windows环境下在IDEA编辑器中spark开发安装步骤
  2. day 0314函数的进阶
  3. Silverlight 游戏开发小技巧:轨迹跟随效果
  4. 单向环形列表及应用场景(约瑟夫环)
  5. 酷派手机android版本,系统版本迎来升级
  6. 【find】Linux中find常见用法示例
  7. asp网络编程:用ASP构建音乐服务器的方法
  8. 《手机音频》参数与选择
  9. 苹果手机投屏到pc电脑
  10. 新建文件没有word、ppt、excel,office图标显示为白色,不能正常显示
  11. 以安全模式重启计算机,重启进入安全模式 重启电脑如何进入安全模式
  12. 固定资产标签化带来的便利
  13. Servlet开发验证码
  14. ASP.NET程序设计复习题
  15. 简述基于JavaEE企业级开发技术(Spring)(1)
  16. C语言小项目实践——日历程序
  17. python中的库有哪些餐厅_推荐一些实用的的 Python 库
  18. Linux运维学习笔记(一)
  19. 联通的营收比电信还少千亿,并且差距还越拉越大了
  20. IE8 的开发人员工具 出不来了 怎么办?

热门文章

  1. 计算机专业野外考察,野外考察--生存技能
  2. Go关键字--type
  3. linux pppd ip up 脚本,pppd拨号脚本配置
  4. npm install 报错 Failed at the XXX install script
  5. 移动硬盘突然识别不了!
  6. python下载安装教程电脑版,python下载好了怎么使用
  7. 没有稿酬,混了这么多年-文艺it工程师自白(写于2014年)
  8. pdf文件转为md文件
  9. 思潮——《别输在不会表达上》
  10. Python数据可视化第 7 讲:matplotlib绘制直方图函数hist