Python开发指南[1]之程序员计时小时钟(附源码)
程序之美
前言
Python作为一门编程语言,这门语言的魅力和影响力已经远超C#、C++等编程语言前辈,被程序员誉为“美好的”编程语言。Python基本上可以说是全能的,系统运维、图形处理、数学处理、文本处理、数据库编程、网络编程、web编程、多媒体应用、pymo引擎、黑客编程、爬虫编写、机器学习、人工智能等等,Python应用无处不在。其优势更是不言而喻,简单易学、高层语言、免费开源、可移植性强、丰富的库、面向对象、可扩展性、可嵌入型、规范的代码等……
有很多初学Python的小伙伴们都觉得Python比较难学,看书吧,看了就忘了,网上的一些教程又是写的含糊不清,故而学习起来很吃力…
故此,本专栏亲自研究,实践,由易到难,层层深入,将调试过程中所遭所遇进行详细讲解,注意事项进行一一列举,希望能够帮助到各位初学Python的小伙伴,避免走弯路,费时费力。
主体
本篇我们先学习下Python的程序员计时小时钟。话不多说,先看下效果图。
运行效果
对于Python程序设计,主要就是基础语法、函数与模块、正则表达式、内存管理与多线程,即为Python的精髓。
1、基础语法:Python编程语言的变量、字符、常用运算符、元组和集合等等;
2、面向对象:这部分主要是学习从认识面向对象和类的特性,然后使用面向对象应用对遇到的异常进行处理;
3、函数与模块,这部分主要是学习函数的定义和标准模块与第三方模块、自定义包的实现等;
4、正则表达式,正则表达式是比较重要的,尤其是后面想从事爬虫的小伙伴,一定要把正则表达式学好;
5、内存管理与多线程,主要是了解Python编程语言的机制和掌握Python多线程。
初学者,不要怕麻烦,要不断的练习,看到自己感兴趣的,最好都能够亲自动手实践一下,特别是控件的重绘,最锻炼编程基础了。
核心代码
#!/usr/bin/env python
import threading
from logging import root
try:
import Tkinter as tk
except:
import tkinter as tk
from tkinter import scrolledtext
import hashlib
import os
import time
import _thread
import sys
import re
detect_network = False
network_up = False
threads = []
LOG_LINE_NUM = 0
curTimes = 0
app = tk.Tk()
#获取当前时间
def get_current_time():
now = time.time()
mlsec = repr(now).split('.')[1][:3]
current_time = time.strftime("%Y-%m-%d %H:%M:%S.{} %Z".format(mlsec),time.localtime(now))
return current_time
#日志动态打印
def write_to_Text():
global LOG_LINE_NUM
current_time = get_current_time()
logmsg_in = str(current_time) #换行
tvShow["text"] = logmsg_in
class workThread (threading.Thread):
def __init__(self, threadID):
threading.Thread.__init__(self)
self.threadID = threadID
def work(self):
global curTimes # 声明引用的是全局变量
while not detect_network:
write_to_Text()
time.sleep(0.001)
def run(self):
self.work()
def start():
thread = workThread(1)
thread.setDaemon(True)
thread.start()
threads.append(thread)
def stop():
# 等待所有线程完成
detect_network = True
app.quit()
def click_once(btn, action):
def inner():
btn.config(state=tk.DISABLED)
action()
return inner
tvShow = tk.Label(app,text="0:0:0.000", width = 24, height = 2, font = ("Times", 72), fg='blue')
tvShow.grid(row=1, column=0, columnspan = 8)
btnExit = tk.Button(app, text='退出', anchor='c', width=6, height=1, command=stop)
btnExit.grid(row=2, column=3)
btnOK = tk.Button(app, text='确定', anchor='c', width=6, height=1)
btnOK.grid(row=2, column=4)
btnOK.config(command=click_once(btnOK, start))
#btnOK.pack()
app.mainloop()
逻辑分析
暫無
结束语
好了,今天就说这么多了,希望小伙伴们能从这篇文章中学到东西,也真心希望能够帮助正在苦学Python程序设计的小伙伴们,你们的成长是我最大的幸福。很感谢您能够在百忙之中浏览我的文章,有需要源码的小伙伴可以私信我。
源碼地址:https://download.csdn.net/download/hnjzfwy/85673542
相关文章
- Python常用代码_python画图代码大全
- pycharm配置python运行环境_C中调用Python
- 苹果电脑python官网下载步骤-Python下载和安装图文教程[超详细]
- python fileinput_Python之fileinput模块学习「建议收藏」
- python格式化转换_Python进制转换format格式化[通俗易懂]
- python安装不了whl文件_Python安装whl文件过程图解
- java和python哪个值得学-学java好还是Python好?
- 【说站】python时间和日期模块的介绍
- python读取pkl_Python 读取文件
- 网工Python之路之paramiko 模块实验(四)分组操作
- python创意小作品代码_python浪漫表白源码
- python设置时间过期改变状态_Python Redis设置过期时间「建议收藏」
- 正则表达式Python_python正则表达式匹配字符串
- 通过Python爬虫获取【小说网站GUI】数据,保姆级教学
- 独家 | 5 个Python高级特性让你在不知不觉中成为Python高手
- python-Python与SQLite数据库-处理SQLite查询结果(二)
- python-Python与PostgreSQL数据库-PostgreSQL数据库的基本知识(二)
- Linux(Ubuntu)系统安装Python
- 一个简单的python读写文件脚本详解编程语言
- Python删除windows 垃圾文件详解编程语言
- Python 随机生成中文验证码详解编程语言
- python进阶Garbage collection垃圾回收1详解编程语言
- 小白的Python之路 day5 python模块详解及import本质编程语言
- Linux下如何快速卸载Python环境(linux如何卸载python)
- python 利用 smtplib发邮件详解编程语言
- Python输出函数print()总结(python print())详解编程语言
- Python for循环语句
- 运维学python之爬虫基础篇(三)urllib模块高级用法
- Linux下运行Python脚本的步骤简介(linux如何运行python脚本)
- 在Linux上安装Python学习快乐(linux下载python)