|
各位大佬好,这里是阿川的博客,祝您变得更强个人主页:在线OJ的阿川大佬的支持和鼓励,将是我成长路上最大的动力阿川水平有限,如有错误,欢迎大佬指正库介绍Python是通过模块来体现库,常见的有标准库和第三方库。标准库是Python自带的库,在官方文档中可以查看第三方库是其他大佬做出来的。库的优点:降低程序员的学习成本提高程序的开发效率常见库datetime我们放在日期管理器中为例:根据日期构造出datetime类型变量把两个变量进行相减,得到的结果即为所求datetime.datetime(年,月,日)第1个datetime是模块,第2个是具体类型但这样容易引起误会,可以直接导入模块中的类型吗?可以的,只要在开头声明from模块import类型.又或者直接将模块名改一下:importdatetimeas改的变量名.第2个常见的库,我们以字符串的转置字符为例,具体体现:1.字符串split的方法可以指定分隔符,把字符串分为多个部分放到一个list里2.针对逆序可以用reverse方法3.再把逆序的列表用join方法组合起来例:"“(”"里面填入字符)这个是字符串表示每次拼接后以什么结束.join(变量)加大难度:查找是否前缀相同的字符串遍历整个列表,取列表中每个字符串判断当前字符串是否是target的前缀就行了.这里要用到startswitch方法,可以判断是不是相同开头的endswitch方法可以判断是不是相同结尾,而in则可以查看这些这个target是不是在里面的.加大难度:很多目录很多文件,请实现一个文件管理器这里要用到Os.walk()Os是模块,操作系统的模块。walk()表示是循环路径.Oswalk每次调用都能自动的去针对子目录进行递归操作,只需要使用上述循环就可,已把所有路径找出来.这里上述例子用到的都是标准库,然后第三方库备pypl官方网站集合了起来,相当于Python世界中的应用商店而pip工具是pypl的一个句柄,在Python安装的过程中就已经下载好了,成为了命令行程序.点击控制台下方的terminal,使用命令pipinstall[库名]安装后记得导入模块名哦这里说着很空洞,直接举个例子生成二维码本质就是字符串,而生活中的二维码更多的是一个URL网址importqrcodestrings=qrcode.make("你好呀!祝你好好学习,天天向上")strings.save("test.png")123当运行的时候发现它没有消息的时候,往往nonewsisgoodnews,没有消息就是最好的消息。对了,其实可以把博客的链接弄成二维码放在简历上,这样面试官可以拿手机扫一下,可以看出您很用心哦心得感悟:网址上的一些代码在自己的程序中不一定运行起来,可能是它代码本身就是错误的,因为没人验证,第2个可能是它的运行软件版本不同,也可能造成运行不成功。例如:操作Excel的模块,主要是xlrd读xlwt写这里的读写都是指文档地址。注意安装的时候尽量这样安装pipinstallxlrd==1.2.0这个数字是版本号这里要指定版本号,否则自动默认最新版,而最新版不支持xlsx格式文件,也就是Excel的格式.我这里是用该模板进行极差标准化演示:importxlrd#先打开xlsx文件reads=xlrd.open_workbook("C:/Users/Documents/Python/Excel.xlsx")#确定标签页loated=reads.sheet_by_index(0)#确定行数rows=loated.nrowsprint(f'行数为:{rows}')#遍历每行寻找每列mixandmaxmix1=100000;max1=0;mix2=100000;max2=0;mix3=100000;max3=0foriinrange(1,rows):rowsj1=loated.cell_value(i,1)mix1=min(mix1,rowsj1)max1=max(max1,rowsj1)rowsj2=loated.cell_value(i,2)mix2=min(mix2,rowsj2)max2=max(max2,rowsj2)rowsj3=loated.cell_value(i,3)mix3=min(mix3,rowsj3)max3=max(max3,rowsj3)denominator1=max1-mix1;denominator2=max2-mix2;denominator3=max3-mix3;#计算每行极差标准化foriinrange(1,rows):rowsj1=loated.cell_value(i,1)real1=(rowsj1-mix1)/denominator1rowsj2=loated.cell_value(i,2)real2=(rowsj2-mix2)/denominator2rowsj3=loated.cell_value(i,3)real3=(rowsj3-mix3)/denominator3print([real1,real2,real3],"\t")123456789101112131415161718192021222324252627282930程序员鼓励师:这里用了一个多线程的方法,因为此处的播放音频的时间比较多,可能会引起输入的卡顿,此时可以创造一个线程,在线程里播放音频.也就是threating.fromplaysoundimportplaysoundfrompynputimportkeyboardimportrandomfromthreadingimportThreadsound=["sound/1.mp3","sound/3.mp3","sound/4.mp3","sound/5.mp3","sound/6.mp3","sound/7.mp3","sound/8.mp3"]count=0defrelease(s):print(s)globalcountcount+=1ifcount%20==0:i=random.randint(0,len(sound)-1)print(i)t=Thread(target=playsound,args=(sound[i],))t.start()soundstart=keyboard.Listener(on_release=release)soundstart.start()soundstart.join()123456789101112131415161718192021当你释放按键的时候listerener会自动调用,像这样不是咱们自己自动调用,而是交给别人在合适的时机进行调用,这样的函数叫做回调函数.最后感谢大大大佬的支持!好的,到此为止啦,祝您变得更强道阻且长行则将至个人主页:在线OJ的阿川大佬的支持和鼓励,将是我成长路上最大的动力
|
|