Python

python学习笔记——函数和模块

函数这么重要的东西自然少不了。那么在python中是怎么定义的呢?defcgg(name):print("haha%s"%name)def是定义的意思,而cgg是函数名,name是参数。当然了,有了函数吗,自然少不了函数的返回值。那么这里用的依然是return。defcgg(a,b):returna+b模块一个小例子:importtimeprint(time.asctime())这个可以显示现在的时间。而这个time就是一个模块,包括之前的turtle也是

系统 2019-09-27 17:51:49 2103

Python

python实现代码统计器

本文实例为大家分享了python中的代码行数统计,供大家参考,具体内容如下思路:统计文件中代码的总行数减去空行单行注释以及多行注释功能:1.获取文件内容的总行数2.排除空行单行注释多行注释defcode_statistics(path):##打开这个文件withopen(path,'r',encoding='utf-8')asopenFile:#按列读取fileline=openFile.readlines()#给非代码行一个变量i=0#整个文件里面内容的

系统 2019-09-27 17:51:02 2103

Python

Python 程序如何高效地调试?

Python在debug方面的支持还是不错的,在明确代码意义的情况下,通过log、print和assert分析错误原因,配合单元测试可以很高效。然而,实际工作中大量代码很可能出自他人之手,这种情况下,使用debugger就显得更加高效了。一、在控制台下进行程序调试PDB如果你熟悉命令行调试工具(例如gdb、lldb),那么使用Python中的PDB将获得非常好的体验,PDB不仅支持项目启动时进行调用,也支持在Pythonshell中交互式调试;功能上,支持

系统 2019-09-27 17:50:11 2103

Python

如何用Python搭建一个简单的推荐系统?

推荐系统的相关知识我们已在前文中提到,在这篇文章中,我们会介绍如何用Python来搭建一个简单的推荐系统。本文使用的数据集是MovieLens数据集,该数据集由明尼苏达大学的Grouplens研究小组整理。它包含1,10和2亿个评级。Movielens还有一个网站,我们可以注册,撰写评论并获得电影推荐。接下来我们就开始实战演练。在这篇文章中,我们会使用Movielens构建一个基于item的简易的推荐系统。在开始前,第一件事就是导入pandas和numPy

系统 2019-09-27 17:49:46 2103

Python

让python同时兼容python2和python3的8个技巧分享

python邮件列表里有人发表言论说“python3在10内都无法普及”。在我看来这样的观点有些过于悲观,python3和python2虽然不兼容,但他们之间差别并没很多人想像的那么大。你只需要对自己的代码稍微做些修改就可以很好的同时支持python2和python3的。下面我将简要的介绍一下如何让自己的python代码如何同时支持python2和python3。一、放弃python2.6之前的python版本python2.6之前的python版本缺少一

系统 2019-09-27 17:47:38 2103

Python

Python函数中定义参数的四种方式

Python中函数参数的定义主要有四种方式:1.F(arg1,arg2,…)这是最常见的定义方式,一个函数可以定义任意个参数,每个参数间用逗号分割,用这种方式定义的函数在调用的的时候也必须在函数名后的小括号里提供个数相等的值(实际参数),而且顺序必须相同,也就是说在这种调用方式中,形参和实参的个数必须一致,而且必须一一对应,也就是说第一个形参对应这第一个实参。例如:复制代码代码如下:defa(x,y):printx,y调用该函数,a(1,2)则x取1,y取

系统 2019-09-27 17:47:26 2103

Python

Python中zip()函数用法实例教程

本文实例讲述了Python中zip()函数的定义及用法,相信对于Python初学者有一定的借鉴价值。详情如下:一、定义:zip([iterable,...])zip()是Python的一个内建函数,它接受一系列可迭代的对象作为参数,将对象中对应的元素打包成一个个tuple(元组),然后返回由这些tuples组成的list(列表)。若传入参数的长度不等,则返回list的长度和参数中长度最短的对象相同。利用*号操作符,可以将listunzip(解压)。二、用法

系统 2019-09-27 17:47:05 2103

Python

python多线程下信号处理程序示例

本文实例为大家分享了python多线程下信号处理程序示例的具体代码,供大家参考,具体内容如下下面是一个网上转载的实现思路,经过验证,发现是可行的,就记录下来。思路python多线程中要响应Ctrl+C的信号以杀死整个进程,需要:1.把所有子线程设为Daemon;2.使用isAlive()函数判断所有子线程是否完成,而不是在主线程中用join()函数等待完成;3.写一个响应Ctrl+C信号的函数,修改全局变量,使得各子线程能够检测到,并正常退出。源码#!/u

系统 2019-09-27 17:46:56 2103

Python

树莓派与PC端在局域网内运用python实现即时通讯

电脑和树莓派在同一局域网内,先在电脑和树莓派创建python运行环境,然后在树莓派中用python运行rpi.py;在电脑上运行computer.py;电脑上输入字符即可在树莓派上即时显示!rpi.py#coding:utf-8#importnecessarypackageimportsocketimporttimeimportsysHOST_IP="192.168.31.151"#树莓派的IP地址HOST_PORT=8888print("Starting

系统 2019-09-27 17:45:46 2103

Python

深入解析Python中的上下文管理器

1.上下文管理器是什么?举个例子,你在写Python代码的时候经常将一系列操作放在一个语句块中:(1)当某条件为真�C执行这个语句块(2)当某条件为真�C循环执行这个语句块有时候我们需要在当程序在语句块中运行时保持某种状态,并且在离开语句块后结束这种状态。所以,事实上上下文管理器的任务是�C代码块执行前准备,代码块执行后收拾。上下文管理器是在Python2.5加入的功能,它能够让你的代码可读性更强并且错误更少。接下来,让我们来看看该如何使用。2.如何使用上

系统 2019-09-27 17:38:08 2103

编程技术

jsp总结

1.El失效可能于web.xml的版本有关,2.4的可以直接显示,我用2.5的只的在页面上加一个<%@pageisELIgnored="false"%>才算搞定2.html代码中表示网页中所有的超链接的目标地址都在新建窗口中打开。表示网页中所有的超链接的目标地址都在原窗口上打开。3.jsp路径项目request.getContextPath()${pag

系统 2019-08-29 22:58:17 2103

编程技术

2012 360校招技术类--------算法设计 传教士过

在河的左岸,有M个传教士,和C个野人,一条船。已知,M》=C。且,1:船只能载两个人,当然得有一个人划船。传教士和野人都可以划船。2:当野人数目超过传教士数目时,传教士就会有危险。问:现在传教士想把所有人都运到河对岸,该怎么运?请编程规划出方案。请大家赐教!(个人的疑惑:如果两个野人一条船到河对岸,那么野人会把船再划回来吗?从题意来看,得不到明确判断啊。)2012360校招技术类--------算法设计传教士过河问题(欢迎各位大牛赐教)

系统 2019-08-12 09:30:07 2103

Python

python实现多线程端口扫描

一个简易的TCP端口扫描器,使用python3实现。需求:扫描目标网站开放哪些端口号,将所有开放的端口号输出。分析:使用socket连接,如果连接成功,认为端口开放,如果连接失败,认为端口关闭(有可能端口开放但连接失败,这里简单认为端口不开放)使用到的库:socket,threading过程:先定义一个函数,对给定的(ip,port)进行扫描,看其是否能连接成功。deftcpPortScan(ip,port,openPort):sock=socket.so

系统 2019-09-27 17:55:41 2102

Python

python利用tkinter实现屏保

本文实例为大家分享了python利用tkinter实现屏保的具体代码,供大家参考,具体内容如下importrandomimporttkinterclassRandomBall():'''运动的球'''def__init__(self,canvas,scrn_width,scrn_heigh):'''球的构造函数:paramcanvas:传入画布,在画布上进行球的构造:paramscrn_width:传入屏幕宽度:paramscrn_heigh:传入屏幕高度

系统 2019-09-27 17:54:04 2102

Python

Python脚本实现DNSPod DNS动态解析域名

闲暇之余,在家里自建了个服务器,因为用的小区宽带,IP位动态分配。域名解析就是个问题,我的域名一般停放在DNSPod下。DNSPod有提供修改的API,就用Python简单的实现了一下动态解析。这样,就不用安装花生壳了。废话不说,看代码:#!/usr/bin/envpython#-*-coding:utf-8-*-importhttplib,urllib,urllib2importtimeimportsys,osimportreimportjsonuser

系统 2019-09-27 17:52:14 2102