import sys print(sys.version) if 9 > 2: #注释 x,y="html","5" a=int(1.33) print(type(a),a+a) z=x+y print("yytt "+z) def u(z): print("hellow,"+z) u(z) v=7e4 w=6j print(type(v),type(w),v,"\n",w,"\n") a="rddtfyfyftrvyv" import random print(random.randrange(1,10),a[2:6],len(a)) a=" AHh,Ffuf,hY " print(a) a=a.strip() print(a) a=a.lower() print(a) a=a.upper() print(a) a=a.replace("H","h") print(a) a=a.split(",")#分离 print(a) #字符串查找 a="gsgwkxhxjvdjchcjwigddau" s="ch" not in a print(s,int(s),"查找") print(s) a=63 b="yyyy{1}yyy{0}" c=b.format(a,s) print(c) print(bool(0)) print(bool("hellowword")) """检查对象是否是整数:""" x=30 print(isinstance(x,int)) print(9**3)#幂函数 print(10//3) #取整除数 print(9/2)#取精确除数 print(2>1 and 1>2) print(2>1 or 1>2) print(not(2>1 and 1>2)) x=y=1 print(x is not y) print("\n") """ Python 集合(数组) 列表(List)元组(Tuple)集合(Set)词典(Dictionary) """ """{列表}""" #数组查找 x=["hellow","yyuu","egheh"] print(str("hellow" in x)+"yes") if "yyuu" in x: print("yes") if (3>2)&(2>1): print("打印列表","&") if (3>2)|(2>1): print("打印列表","l") if (1>2)^(1>0):#有且仅一个ture print("打印列表","^") print(type(x)) #此例将返回从索引 -4(包括)到索引 -1(排除)的项目: thislist=["win10","win11","win12","win13","win14"] print(thislist[-4:-1],thislist[-1]) thislist[0]="win9" print(thislist) for x in thislist: print(x) if "win11" in thislist: print("in it",len(thislist)) #extend() 方法用于将一个列表的所有元素添加到另一个列表的末尾。 #list1.extend(list2) #extend:拓展 #将项目添加到列表的末尾 thislist.append("win999") #append:附加 print(thislist) #在指定的索引处添加项目 thislist.insert(0,"vs") #insert:插入 print(thislist) #删除指定项目 thislist.remove("vs") print(thislist) #删除索引,未指定索引,则删除最后一项 thislist.pop() print(thislist) #reverse.相反,挫折 thislist.reverse() num=thislist.count("win14") print(thislist,num) #del关键字删除指定的索引: del thislist[-1] print(thislist,"完成") thislist.clear() print(thislist) #del 关键字也能.完整地.删除列表: """del thislist print(thislist,"完成")""" list1=[1,2,3] list2=list1 list3=list1.copy() list4=list(list1) list1.remove(3) print(list2,list3,list4,"\n") """{元组}""" thistuple=("in","on","out") print(thistuple) #创建元组后,您将无法更改其值。元组是不可变的,或者也称为恒定的。 #把元组转换为列表即可进行更改: thislist=list(thistuple) thislist[0]="into" thistuple=tuple(thislist) print(thistuple) tuple1=("a","b","c","d","e","c") tuple3=tuple(tuple1) #index:索引 a=tuple3.index("c")#在元组中搜索指定的值并返回它被找到的位置。 b=tuple3.count("c")#元组中指定值出现次数 """{集合set}""" thisset = {"apple", "banana", "cherry"} print(thisset) #集合是无序的,因此您无法确定项目的显示顺序。 #但是您可以使用 for 循环遍历 set 项目,或者使用 in 关键字查询集合中是否存在指定值 i=0 for x in thisset: i+=1 print(str(i)+":"+x) if x in thisset: print("banana" in thisset) thisset.add("orange") print(thisset) thisset.update(["grapes","mango","apple"]) print(thisset,len(thisset)) #记住要考 thisset.remove("apple") print(thisset)#如果删除元素不存在会产生错误 thisset.discard("apple") print(thisset)#不产生错误 #使用 pop() 方法删除最后一项:(由于set无序,将删除随机一项) x=thisset.pop() print(x,thisset) thisset.clear() print(thisset) thisset.clear() print(thisset) del thisset s1={"a","b","c"} s2={"c","d","e"} s3=s1.union(s2) s1.update(s2) print(s3,s1) """字典(Dictionary)""" thisdict={ "name":"周文博", "age":18, "phonenumber":18397362878, "地址":"517宿舍" } print(thisdict) print(thisdict["name"]) print(thisdict.get("name"),"\n") thisdict["name"]="@" #如何格式化输出字典 for x in thisdict: print(x,thisdict[x]) print("\n") for x in thisdict.values(): print(x) print("等效为") for x in thisdict: print(thisdict[x]) print("\n") for x,y in thisdict.items(): print(x,y) if "name"in thisdict: print("yu") print("name" in thisdict) print(len(thisdict)) thisdict ["unknown"]="yu" print(thisdict) #pop删除一项 thisdict.pop("unknown") print(thisdict,"留个飞雷神") a=thisdict.popitem()#随机移除一项,以元组形式返回, 原字典还是字典 print(thisdict,type(thisdict),a,type(a)) del thisdict["age"] print(thisdict) #当然可以完整删除字典 #clear清空字典 print(thisdict.clear()) print(thisdict) thisdict={ "样本一":"壹", "样本二":"二", "样本三":"三", } for x,y in thisdict.items(): print(x,y) dict1=thisdict dict2=thisdict.copy() dict3=dict(thisdict) thisdict.pop("样本一") print(dict1,dict2,dict3) #嵌套字典(代码略) #dict() 构造函数 t=dict(a=1,b="2",c="3") # 请注意,关键字不是字符串字面量 # 请注意,使用了等号而不是冒号来赋值 print(t) y=tuple(["r","y"]) print(y) """#结束""" x=5 if x>5: print("yuan") elif x<5: print("shen") else: print("qidong") a=3 b=3 c=2 print("A")if a>b else print("B")if a==b else print("C") if a==b and a==c: print("√") else: print("×") if a==b: pass i=0 z=[] while i<10: i+=1 if i==3: continue z.append(i) print(z,"循环已完成") z.clear() #for list=["a","b","c","d"] for x in list: if x=="b": continue z.append(x) print(z) z.clear() # for x in "abcd": if x=="b": break print(x) # for x in range(2,100,5) : z.append(x) else: print(z) z.clear() # for x in {"t","g"} : pass#啥都不执行,占位作用 # def read(t="yuwen"): print(t+" shu") read("shuxue") read() # def red(red): for x in red: z.append(x) print(tuple(z)) red(["yi","er","san"]) #如需使函数返回值,请使用 return 语句: def int(x=0): return x*9+1 print(int(5)) # def r(r1,r2,r3): return r2 print(r(r2="mm",r1="m",r3=2),r("mm","m",2)) ############# def r(*m): print(m[2]) r(1,23,65,25,"g","u","n") ############# def vss(): pass #来个递归.优雅 def digui(x) : if x>0: num=x+digui(x-1) print(num,end=" ")#可以不换行 else: num=0 return num digui(6) ### #一个参数a并返回a +10的结果。 x=lambda a:a+10#lambda:λ print (x(50)) x=lambda a,b:a*b print(x(3,9)) x=lambda x,y,z:x+y*z print(x(1,2,3)) def iny(x): return lambda a:a*x out=iny(9) out2=iny(2) print(out(10),out(20),out2(10),out2(20)) #Python 数组 #请注意,Python 没有内置对数组的支持,但可以使用 Python 列表代替 list1=["q","w","q"] list2=["o","w","o"] print(list1.extend(list2),list1,list2) class thisclass: x=7 print(thisclass.x) class thisclass: def __init__(a,name,age): a.name=name a.age=age class1=thisclass("diona",12) print(class1.age,class1.name) class thisclass:#注意是有两个下划线的 def __init__(b,name,age,sex): b.name=name b.age=age b.sex=sex def y(a) : print(a.sex+str(a.age)) p1=thisclass("zhou",18,"男") print(type(p1.name)) p1.sex="女" y(p1) ##4月14日,我重新归来 class good: def __init__(a,b,c): a.a1=b a.a2=c def cout(a): print(a.a1,a.a2) h1=good(1,"ᕕ(◠ڼ◠)ᕗ。") h2=good(2,"Ciallo~(∠・ω< )⌒☆") h1.cout() h2.cout() class bad(good): def __init__(a,b,c,d): super().__init__(c,d) a.a3=b def cout(jok): print(jok.a3,jok.a2,jok.a1) h3=bad(3,"´༥`",3) h4=bad(4,"˶╹ꇴ╹˶",4) h5=bad(5,"-w-",5) h6=bad(6,"<(´⌯ ̫⌯`)>",6) h3.cout() h4.cout() h5.cout() h6.cout() ##以上作为序 class a: def __init__(a,b): a.s=b def v(i): print(i.s) a1=a(1) a1.v() #子类 class b(a): def __init__(a1,b1,c1): super().__init__(c1) b1=b(1,2) b1.v() ##4月16日啦 #Python 迭代器 #1)__iter__ __next__ mytuple=("x","y","z") num=iter(mytuple) i=0 while i<3: print(next(num),end=" ") i+=1 ul="hellow world" ual=iter(ul) print("\n"+next(ual),end=" ") i=0 while(i<11): print(next(ual),end=" ") i+=1 #2) for 循环遍历 #3) StopIteration停止迭代 class vivo: def __iter__(a): a.s=1 return a def __next__(a): if a.s<=20: x=a.s a.s+=1 return x else: raise StopIteration v50=vivo() for x in v50: print(x,end=" ") ##3:43 #命名变量 x=1 def u(): x=2 print("\n"+str(x)) u() print(x) #global关键字可以局部转全局 def ul(): global x x=3 print("x=",x) ul() print("x=",x) """ #模块 电脑好查路径 基本形式 #import mymodule as v #as可以为函数创建别名 #as.greeting("Bill") 在名为 mymodule.py 的文件中保存代码: #def greeting(name): #print("Hello, " + name) 几个内建模块 import platform #获取操作系统名称 x=platform.system() print(x) dir()函数 #列出模块中所有函数名 x=dir(所求模块) print(x) 使用 from 关键字选择仅从模块导入部件 from platform import system x=system() print(x) #ps:使用from关键字导入时,引用模块中的元素时不需要模块名称 """ from platform import system #获取操作系统名称 print(system()) import datetime x=datetime.datetime.now() y=datetime.datetime(2024,4,16)#创建日期 print("北京时间:"+str(x)) print(x.year,x.month,x.day) #strftime print(type(x)) print(type(y.strftime("%A"))) print(y.strftime("%A"))#weekday print(y.strftime("%B"))#月名称 print("\n") # # """JSON""" # import json x='{ "name":"diinaka","age":"12","uuuu":"uuuu"}' y=json.loads(x) print(y["name"]) import json mydic={ "1":11, "2":12, "3":13} myjs=json.dumps(mydic) print(myjs) import json gf={ "mylist":["dict","list","tuple","string","int","float","True","False","None"], "mydic":{"year":"5", "month":"8"}, "mynum":56 } h=json.dumps(gf,indent=4,separators=("可改参数1" , "可改参数2"),sort_keys=1) #indent:缩进 print(h) """RegEx:正则表达式---检索数据""" import re txt="yes i think you are iinnnyes5yes6o9u8tyes right" x=re.search("^yes.*right$",txt) x=re.findall("[a-h]",txt)#以下称为元字符 print(x) x=re.findall("y.*y",txt) print(x) x=re.findall("y.u",txt) print(x) x=re.findall("^ye",txt) print(x) x=re.findall("ght$",txt) print(x) x=re.findall("y.*t",txt) print(x) x=re.findall("in*",txt)#零次或多次 print(x) x=re.findall("in+",txt)#一次或多次 print(x) x=re.findall("in{1,2}",txt) print(x) x=re.findall("in|ou",txt) print(x) x=re.findall("\d",txt) print(x) x=re.findall("\D",txt) print(x)#返回不含数字 #以下为特殊序列 x=re.findall("\Ayes",txt)#若在开头,返回此值 print(x) x=re.findall(r"yes\b",txt)#r让Python理解为正则表达式而不是转义字符 print(x) x=re.findall(r"\byes",txt)#yes在开头 print(x) x=re.findall("yes",txt) print(x) x=re.findall(r"\Byes",txt)#排除yes在开头(中间或后面) print(x) x=re.findall("\s",txt) print(x) x=re.findall("\S",txt) print(x)#返回除空白字符 newone=".uav69n56c.u2_bv,f@rxf" x=re.findall("\w",newone)#包含任何单词字符 print("\n",x) x=re.findall("\W",newone) print(x) x=re.findall("f\Z",newone) print(x) ##SET类 懒得打了,编个函数 print("好了下面是函数运行的") def u(hug): x=re.findall(hug,newone) print(x) u("[a-d]") u("[^avncb.]")#除avncb. u("[56]") u("[0-5][0-9]") u("[a-zA-Z]") txt="Aa Cb Ccc d ef" #末尾均可以加入int类型数表示最大次数 x=re.split("\s",txt) print(x) x=re.sub("\s","替换",txt) print(x) #正则表达式查找以大写 "C" 开头的任何单词: x=re.search(r"\bC\w+",txt) print(x.span()) """print(x.span() 返回的元组包含了匹配的开始和结束位置) print(x.string 返回传入函数的字符串) print(x.group() 返回匹配的字符串部分)""" """ ## Python PIP ## """ #包,在电脑执行 #id="1" """python try except""" try: print(o) except NameError: print("NameError") except: print("ok") else: print("nothing wrong") finally: print("end") """x=1 if x>0: raise Exception("出错了,挂了") #exception:异常""" """x="hellow" if not type(x) is int: raise TypeError("格式错误")""" ##17日 """x="your name is {1} age is {0:.1f} sex is {he}" print(x.format(12,input(),he="男"))#多次引用相同值用索引号""" x=open("1.txt","wt")#x为创建新文件,不存在输出错误 x.write("\none") x.close x=open("1.txt","at") x.write("\ntwo") x.close() x=open("1.txt","rt") print(x.read()) x.close() import os if os.path.exists("1.txt"): os.remove("1.txt") else: print("no exists") """OK,python教程与学习学完,撒花"""