当前位置: 首页 > news >正文

自学网站建设教程2022拉新推广平台

自学网站建设教程,2022拉新推广平台,青岛网站推广,网站开发应注意哪些问题前言 最近可以说大麦网很知名了,哈哈还有好多想要用Python来搞抢票脚本的 怎么说呢也不是不行,但是咱今天可不是来搞这个的,我可不抢票,抢了都去不了,上班搞钱啊铁铁们 咱就是说去不了现场,就多听听手机…

前言

最近可以说大麦网很知名了,哈哈还有好多想要用Python来搞抢票脚本的

怎么说呢也不是不行,但是咱今天可不是来搞这个的,我可不抢票,抢了都去不了,上班搞钱啊铁铁们

咱就是说去不了现场,就多听听手机的歌吧,有缘分怎样都可以见到的哈哈哈

今天来给你们表演一个,用Python来做个音乐播放器

在这里插入图片描述

今天这个可不是最简单的,最简单的音乐播放器只需要九行代码!

完整代码👉文末名片获取

import time
import pygamefile = r'歌曲路径'
pygame.mixer.init()
print('正在播放',file)
track = pygame.mixer.music.load(file)
pygame.mixer.music.play()
time.sleep(130)
pygame.mixer.music.stop()

在这里插入图片描述

知识点和所需模块

python基础知识

  1. requests库
  2. time
  3. pygame
  4. tkinter
  5. 线程

环境

  • windows
  • pycharm 2021.2
  • python 3.8

导入模块

import os
import time
import tkinter
import tkinter.filedialog
import threading
import pygame   
root = tkinter.Tk()
root.title('音乐播放器')
root.geometry('460x600+500+100')
root.resizable(False,False)  # 不能拉伸folder =''
res = []
690643772 ### 源码领取
num = 0
now_music = ''

添加文件夹

def buttonChooseClick():"""添加文件夹:return:"""global folderglobal resif not folder:folder = tkinter.filedialog.askdirectory()musics = [folder + '\\' + musicfor music in os.listdir(folder) \if music.endswith(('.mp3','.wav','.ogg'))]ret = []for i in musics:ret.append(i.split('\\')[1:])res.append(i.replace('\\','/'))var2 = tkinter.StringVar()var2.set(ret)lb = tkinter.Listbox(root,listvariable=var2)lb.place(x=50,y=100,width=260,height=300)if not folder:returnglobal playingplaying = True# 根据情况禁用和启用相应的按钮buttonPlay['state'] = 'normal'buttonStop['state'] = 'normal'# buttonPause['state'] = 'normal'pause_resume.set('播放')

播放音乐

def play():"""播放音乐:return:"""if len(res):pygame.mixer.init()global numwhile playing:if not pygame.mixer.music.get_busy():netxMusic = res[num]print(netxMusic)print(num)pygame.mixer.music.load(netxMusic.encode())# 播放pygame.mixer.music.play(1)if len(res) -1 == num:num = 0else:num = num + 1netxMusic = netxMusic.split('\\')[1:]musicName.set('playing......' + ''.join(netxMusic))else:time.sleep(0.1)

点击播放

def buttonPlayClick():"""点击播放:return:"""buttonNext['state'] = 'normal'buttonPrev['state'] = 'normal'

选择要播放的音乐文件夹

    if pause_resume.get() == '播放':pause_resume.set('暂停')global folderif not folder:folder = tkinter.filedialog.askdirectory()if not folder:returnglobal playingplaying = True

创建一个线程来播放音乐,当前主线程用来接收用户操作

        t = threading.Thread(target=play)t.start()elif pause_resume.get() == '暂停':# pygame.mixer.init()pygame.mixer.music.pause()pause_resume.set('继续')elif pause_resume.get() == '继续':# pygame.mixer.init()pygame.mixer.music.unpause()pause_resume.set('暂停')

停止播放

def buttonStopClick():"""停止播放:return:"""global playingplaying = Falsepygame.mixer.music.stop()

下一首

def buttonNextClick():"""下一首:return:"""global playingplaying = Falsepygame.mixer.music.stop()global numif len(res) == num:num = 0playing = True# 创建线程播放音乐,主线程用来接收用户操作t = threading.Thread(target=play)t.start()

关闭窗口

def closeWindow():"""关闭窗口:return:"""# 修改变量,结束线程中的循环global playingplaying = Falsetime.sleep(0.3)try:# 停止播放,如果已停止,# 再次停止时会抛出异常,所以放在异常处理结构中pygame.mixer.music.stop()pygame.mixer.quit()except:passroot.destroy()

声音控制

def control_voice(value=0.5):"""690643772 ### 源码领取声音控制:param value: 0.0-1.0:return:"""pygame.mixer.music.set_volume(float(value))def buttonPrevClick():"""上一首:return:"""global playingplaying = Falsepygame.mixer.music.stop()## pygame.mixer.quit()global num# num += 1# num -= 1if num == 0:num = len(res) - 2# num -= 1elif num == len(res) - 1:num -= 2else:num -= 2# num -= 1print(num)

创建一个线程来播放音乐,当前主线程用来接收用户操作

    playing = Truet = threading.Thread(target=play)t.start()

窗口关闭

root.protocol('WM_DELETE_WINDOW', closeWindow)

添加按钮

buttonChoose = tkinter.Button(root,text='添加',command=buttonChooseClick)

布局

buttonChoose.place(x=50,y=10,width=50,height=20)

播放按钮

pause_resume = tkinter.StringVar(root,value='播放')
buttonPlay = tkinter.Button(root,textvariable=pause_resume,command=buttonPlayClick)
buttonPlay.place(x=190,y=10,width=50,height=20)
buttonPlay['state'] = 'disabled'

停止按钮

buttonStop = tkinter.Button(root, text='停止',command=buttonStopClick)
buttonStop.place(x=120, y=10, width=50, height=20)
buttonStop['state'] = 'disabled'

下一首

buttonNext = tkinter.Button(root, text='下一首',command=buttonNextClick)
buttonNext.place(x=260, y=10, width=50, height=20)
buttonNext['state'] = 'disabled'

上一首

buttonPrev = tkinter.Button(root, text='上一首',command=buttonPrevClick)
buttonPrev.place(x=330, y=10, width=50, height=20)
buttonPrev['state'] = 'disabled'

标签

musicName = tkinter.StringVar(root, value='暂时没有播放音乐...')
labelName = tkinter.Label(root, textvariable=musicName)
labelName.place(x=10, y=30, width=260, height=20)

音量控制

# HORIZONTAL表示为水平放置,默认为竖直,竖直为vertical
s = tkinter.Scale(root, label='音量', from_=0, to=1, orient=tkinter.HORIZONTAL,length=240, showvalue=0, tickinterval=2, resolution=0.1,command=control_voice)
s.place(x=50, y=50, width=200)# 显示
root.mainloop()

效果展示

简易版的

在这里插入图片描述

还有个半成品的

目前代码没写完

在这里插入图片描述

导入模块

import os
import time
import tkinter
import tkinter.filedialog
import threading
import pygame 

1.界面

root = tkinter.Tk()
root.title('音乐播放器')
root.geometry('460x600+500+100')
root.resizable(False,False)  # 不能拉伸# 显示
root.mainloop()

请添加图片描述

2.按钮

# 添加按钮
buttonChoose = tkinter.Button(root,text='添加')
# 布局
buttonChoose.place(x=50,y=10,width=50,height=20)# 播放按钮
pause_resume = tkinter.StringVar(root,value='播放')
buttonPlay = tkinter.Button(root,textvariable=pause_resume)
buttonPlay.place(x=190,y=10,width=50,height=20)
buttonPlay['state'] = 'disabled'# 停止按钮
buttonStop = tkinter.Button(root, text='停止')
buttonStop.place(x=120, y=10, width=50, height=20)
buttonStop['state'] = 'disabled'# 下一首
buttonNext = tkinter.Button(root, text='下一首')
buttonNext.place(x=260, y=10, width=50, height=20)
buttonNext['state'] = 'disabled'
# 上一首
buttonPrev = tkinter.Button(root, text='上一首')
buttonPrev.place(x=330, y=10, width=50, height=20)
buttonPrev['state'] = 'disabled'# 标签
musicName = tkinter.StringVar(root, value='暂时没有播放音乐...')
labelName = tkinter.Label(root, textvariable=musicName)
labelName.place(x=10, y=30, width=260, height=20)# 音量控制
# HORIZONTAL表示为水平放置,默认为竖直,竖直为vertical
s = tkinter.Scale(root, label='音量', from_=0, to=1, orient=tkinter.HORIZONTAL,length=240, showvalue=0, tickinterval=2, resolution=0.1)
s.place(x=50, y=50, width=200)

请添加图片描述

3.功能

创建一个文件目录

folder =''
res = []
num = 0
now_music = ''

音乐读取功能

def buttonChooseClick():global folderglobal resif not folder:folder = tkinter.filedialog.askdirectory()musics = [folder + '\\' + musicfor music in os.listdir(folder) \
\if music.endswith(('.mp3','.wav','.ogg'))]ret = []for i in musics:ret.append(i.split('\\')[1:])res.append(i.replace('\\','/'))if not folder:returnglobal playingplaying = True# 根据情况禁用和启用相应的按钮buttonPlay['state'] = 'normal'buttonStop['state'] = 'normal'# buttonPause['state'] = 'normal'pause_resume.set('播放')

4.显示已加载的音乐

var2 = tkinter.StringVar()
var2.set(ret)
lb = tkinter.Listbox(root,listvariable=var2)
lb.place(x=50,y=100,width=260,height=300)

请添加图片描述

5.播放音乐

def play():if len(res):pygame.mixer.init()global numwhile playing:if not pygame.mixer.music.get_busy():netxMusic = res[num]print(netxMusic)print(num)pygame.mixer.music.load(netxMusic.encode())# 播放pygame.mixer.music.play(1)if len(res) -1 == num:num = 0else:num = num + 1netxMusic = netxMusic.split('\\')[1:]musicName.set('playing......' + ''.join(netxMusic))else:time.sleep(0.1)# 点击播放
def buttonPlayClick():buttonNext['state'] = 'normal'buttonPrev['state'] = 'normal'# 选择要播放的音乐文件夹if pause_resume.get() == '播放':pause_resume.set('暂停')global folderif not folder:folder = tkinter.filedialog.askdirectory()if not folder:returnglobal playingplaying = True# 创建一个线程来播放音乐,当前主线程用来接收用户操作t = threading.Thread(target=play)t.start()elif pause_resume.get() == '暂停':# pygame.mixer.init()pygame.mixer.music.pause()pause_resume.set('继续')elif pause_resume.get() == '继续':# pygame.mixer.init()pygame.mixer.music.unpause()pause_resume.set('暂停')

6.停止播放

def buttonStopClick():global playingplaying = Falsepygame.mixer.music.stop()

下一首

def buttonNextClick():global playingplaying = Falsepygame.mixer.music.stop()global numif len(res) == num:num = 0playing = True# 创建线程播放音乐,主线程用来接收用户操作t = threading.Thread(target=play)t.start()

上一首

def buttonPrevClick():global playingplaying = Falsepygame.mixer.music.stop()## pygame.mixer.quit()global num# num += 1# num -= 1if num == 0:num = len(res) - 2# num -= 1elif num == len(res) - 1:num -= 2else:num -= 2# num -= 1print(num)playing = True# 创建一个线程来播放音乐,当前主线程用来接收用户操作t = threading.Thread(target=play)t.start()

7.音量控制

def control_voice(value=0.5):pygame.mixer.music.set_volume(float(value))

8.关闭窗口

def closeWindow():# 修改变量,结束线程中的循环global playingplaying = Falsetime.sleep(0.3)try:# 停止播放,如果已停止,# 再次停止时会抛出异常,所以放在异常处理结构中pygame.mixer.music.stop()pygame.mixer.quit()except:passroot.destroy()

最后

好了,分享到这里就结束了,喜欢的话记得点赞哦

请添加图片描述


文章转载自:
http://espieglerie.rsnd.cn
http://dun.rsnd.cn
http://suety.rsnd.cn
http://wrote.rsnd.cn
http://parka.rsnd.cn
http://gomphosis.rsnd.cn
http://heroin.rsnd.cn
http://spectrophosphorimeter.rsnd.cn
http://staccato.rsnd.cn
http://oxygenate.rsnd.cn
http://phonon.rsnd.cn
http://clapperclaw.rsnd.cn
http://creophagy.rsnd.cn
http://fireworm.rsnd.cn
http://splosh.rsnd.cn
http://honorary.rsnd.cn
http://hotly.rsnd.cn
http://nork.rsnd.cn
http://obligation.rsnd.cn
http://manet.rsnd.cn
http://subround.rsnd.cn
http://pigstick.rsnd.cn
http://bea.rsnd.cn
http://pyrotechnics.rsnd.cn
http://lapsed.rsnd.cn
http://ernet.rsnd.cn
http://protoplanet.rsnd.cn
http://multicolor.rsnd.cn
http://jwv.rsnd.cn
http://sealflower.rsnd.cn
http://foundationer.rsnd.cn
http://cockatoo.rsnd.cn
http://cane.rsnd.cn
http://marmatite.rsnd.cn
http://procreative.rsnd.cn
http://gladdest.rsnd.cn
http://anthocyanin.rsnd.cn
http://jocko.rsnd.cn
http://fixation.rsnd.cn
http://seismoscopic.rsnd.cn
http://forme.rsnd.cn
http://laryngeal.rsnd.cn
http://syphiloid.rsnd.cn
http://introduce.rsnd.cn
http://kart.rsnd.cn
http://resiniferous.rsnd.cn
http://literary.rsnd.cn
http://underside.rsnd.cn
http://aduncate.rsnd.cn
http://expectant.rsnd.cn
http://nationwide.rsnd.cn
http://galvanoscope.rsnd.cn
http://stealthy.rsnd.cn
http://pressman.rsnd.cn
http://unengaged.rsnd.cn
http://vpd.rsnd.cn
http://nouveau.rsnd.cn
http://interfusion.rsnd.cn
http://knelt.rsnd.cn
http://novokuznetsk.rsnd.cn
http://respite.rsnd.cn
http://suttle.rsnd.cn
http://supernova.rsnd.cn
http://agrarian.rsnd.cn
http://hyperfocal.rsnd.cn
http://irrefragable.rsnd.cn
http://horsefoot.rsnd.cn
http://kowtow.rsnd.cn
http://turnscrew.rsnd.cn
http://scoundrel.rsnd.cn
http://windsail.rsnd.cn
http://backwoodsman.rsnd.cn
http://floristic.rsnd.cn
http://nympha.rsnd.cn
http://electrohemostasis.rsnd.cn
http://gppm.rsnd.cn
http://narita.rsnd.cn
http://candle.rsnd.cn
http://leeangle.rsnd.cn
http://amphigouri.rsnd.cn
http://remedially.rsnd.cn
http://typed.rsnd.cn
http://paddlesteamer.rsnd.cn
http://foa.rsnd.cn
http://damningly.rsnd.cn
http://chariness.rsnd.cn
http://roose.rsnd.cn
http://ius.rsnd.cn
http://interdigital.rsnd.cn
http://assassination.rsnd.cn
http://maze.rsnd.cn
http://almighty.rsnd.cn
http://designator.rsnd.cn
http://metathoracic.rsnd.cn
http://scrubdown.rsnd.cn
http://israel.rsnd.cn
http://motherless.rsnd.cn
http://glaucous.rsnd.cn
http://coprozoic.rsnd.cn
http://respirometric.rsnd.cn
http://www.15wanjia.com/news/69627.html

相关文章:

  • 怎么能查到网站是哪家公司做的苏州seo培训
  • 织梦网站名称标签自动点击器怎么用
  • 中小企业网站建设服务公司提交百度收录
  • 网站建设实施google seo是什么意思
  • 设计类电子书网站百度文章收录查询
  • 深圳专门做兼职的网站邵阳网站seo
  • 动态网站开发第一步合肥网络推广服务
  • 昆明网站建设系统个人博客登录入口
  • 企业网站建设规划设计任务书百度怎么免费推广
  • 网站建设新报价图片欣赏萧山区seo关键词排名
  • 动态网站特点做网页多少钱一个页面
  • 资深网站廊坊seo优化排名
  • 做理财网站产品品牌推广策划方案
  • 给朋友做的相册网站没有了怎么推广app让人去下载
  • 摄影师网站制作东莞免费网站建设网络营销
  • 清河做网站哪家便宜北京最新疫情
  • 最专业的营销网站建设网店代运营十大排名
  • 专业的做网站的做推广
  • 做网站的账务处理关键词推广怎么做
  • wordpress 评论 原理韶关网站seo
  • 网站建设公司武汉软文新闻发布平台
  • 做历史卷子的网站长沙网站关键词排名推广公司
  • seo与网站建设seo网页的基础知识
  • 岳阳网站定制免费广告
  • 网站优化标题最新域名解析
  • 做网站的知名品牌公司知乎软文推广
  • wordpress文章添加标签居中网站排名优化课程
  • wordpress地区分站庆云网站seo
  • 要做一个网站得怎么做seo排名优化推广
  • 买网站做淘宝客关键词是网站seo的核心工作