今日内容概要

包的具体使用

在使用包的时候最好加上__init__.py
虽然在oython3中对包的要求降低了但是为了提高兼容性 在使用时还是加上
1.如果只想用包中的几个模块,那么按照之前的方法即可
	from aaa import md1,md2
2.如果直接导入包名
	import aaa
    导入包其实就是包下面的__init__.py文件,该文件中有什么名字就可以通过包名点使用

image

编程思想的转变

#1.面条版阶段
	所有代码全部堆在一起(if elif else 的结构)
#2.函数版阶段
	根据功能的不同封装不同的函数
#3.模块版阶段
	更具文件的不同拆封成不同的文件
    
'''
不断优化的阶段 使得为了划分区域越准确 为了使资源的高效管理
'''

软件开发目录规范

#1.文件及目录的名字是可以转变的 但是思想是不变的 分类管理
#2.目录规则主要规定开发程序的过程中针对不同的文件功能需要做不同的分类
myproject 项目文件夹
	1.bin文件夹       主要存放项目启动文件
    	start.py      启动文件可以放到bin文件下 也可以放到根目录下
    2.conf文件夹       主要存放项目配置文件
    	settings.py   主要存放项目的默认配置 一般是全大写
    3.core文件夹	    主要存放项目的核心文件
    	src.py        里面存放项目核心功能
    4.interface文件夹  主要存放项目接口文件
    	goods.py      按照具体的业务来划分对应的文件
        user.py
        account.py
    5.db文件夹         主要存放项目相关数据
    	userinfo.py   
        db_handler.py  存放数据库相关功能
    6.log文件夹         主要存放项目相关日志
    	log.log
    7.lib文件夹         主要存放项目公共功能
    	common.py      
    8.readme文件        主要存放项目相关说明(类似于说明书)
    9.requirements.txt  主要存放项目所需模块以及版本

常用内置模块

collections模块

#1.具名元组:namedtuple
	from collections import namedtuple
    
    '''
    表示二维的坐标系
    print=namedtuple('点',['x','y'])
    生成点信息
    p1 = point(1,2)
    print(p1)     #点(1,2)
    print(p1,x)   # 1
    print(p1,y)   # 2
    '''
    制作扑克牌
    card = namedtuple('扑克牌',['num','color'])
    c1 = card('A','♥')
    print(c1,c1.num,c1.color)
    # 输出的结果是 扑克牌'A','♥'   A    ♥
    
#2.队列
	队列与堆栈
        队列:先进先出
        堆栈:后进先出
     两个都是单边输出的 只能一边进一边出

时间模块

import time
'''
三种时间的表达形式
	1.时间戳
		秒数
	2.结构划时间
		给计算机看的时间格式
	3.格式化时间
		使用我们的时间单位记录的时间
'''
多种用法
1.time.time
	获取当前时间与1971.1.1所过去的时间
2.time.localtime()
	获得当前时 是以结构化时间的格式
3.time.strfitime()
	获取当前格式可以输入符号来选则输出格式
    %Y  年  %m  月   %d   日
    %H  时  %M  分   %S   秒
    使用 %X  可以打印出 时 分 秒

image

4.import datetime
'''
datetime   年月日 时分秒
date       年月日
time       时分秒
'''
 指定时间的输入
 c = datetime.datetime(2017,5,23,12,13)
print(c)    # 2017-05-23 12:13:00

image

5.import datetime
citime = datetime.date.today()
print(citime)
time_j = datetime.timedelta(days=3)
print(citime+time_j)
#做到时间延迟

image

随机数模块

import random
print(random.random())        # 随机产生一个0到1的小数
print(random.randint(1,10))    # 随机产生一个1到10的整数(闭区间)
print(random.randrange(1,100,2)) # 随机产生指定的整数 第三位数时间隔

image

#同样适用于字符串
print(random.choice(['一等奖','二等奖','三等奖']))
print(random.choices(['一等奖','二等奖','三等奖']))

image

#打乱数据顺序
l1 = [1,2,3,4,5,6,7,8,9]
random.shuffle(l1)
print(l1)
'''产生图片的验证码'''
def func(a):
    code=''
    for i in range(a):
        upper_r = chr(random.randint(65,90))
        lower_r = chr(random.randint(97,122))
        int_r = str(random.randint(0,9))
        tmep = random.choice([upper_r,lower_r,int_r])
        code += tmep
	return code
res = func(10)
print res

image

原文地址:http://www.cnblogs.com/xiaochenxiangchangpang/p/16807036.html

1. 本站所有资源来源于用户上传和网络,如有侵权请邮件联系站长! 2. 分享目的仅供大家学习和交流,请务用于商业用途! 3. 如果你也有好源码或者教程,可以到用户中心发布,分享有积分奖励和额外收入! 4. 本站提供的源码、模板、插件等等其他资源,都不包含技术服务请大家谅解! 5. 如有链接无法下载、失效或广告,请联系管理员处理! 6. 本站资源售价只是赞助,收取费用仅维持本站的日常运营所需! 7. 如遇到加密压缩包,默认解压密码为"gltf",如遇到无法解压的请联系管理员! 8. 因为资源和程序源码均为可复制品,所以不支持任何理由的退款兑现,请斟酌后支付下载 声明:如果标题没有注明"已测试"或者"测试可用"等字样的资源源码均未经过站长测试.特别注意没有标注的源码不保证任何可用性