Python学习杂记_13_模块(一)_基础
一、模块和模块调用
模块其实就是一个Python文件,模块的调用实际就是把这个Python文件从头到尾执行一遍。 如果是在相同路径下的调用: 1. 先导入整个模块,然后引用模块中的方法 import model # 导入模块 model.run1() # 执行模块中的方法
model.run2()
model.run() 2. 直接导入模块中具体的方法,然后直接使用方法 from model import run,run1 # 导入模块的方法 run() # 执行方法
run1() 3. 从模块中导入全部的方法,这种方法可以,但不提倡用,因为在后期排查错误是会非常难以定位 from model import *
from model2 import * run()
run1()
run2() 4. 从模块导入变量也是可以的
from model import name 如果是在不同的路径下,需要配置环境变量才可以,
比如,要在程序中使用E:\byz_code下day4.set1的hhh()方法 import sys
sys.path.append(r'E:\byz_code') # 这两行是配置环境变量,把路径E:\byz_code添加到环境变量 from day4.set1 import hhh # 导入和使用
hhh() 注意:
环境变量就是用来让你在任意一个目录都可以使用这个命令。
导入模块的时候,python首先在当前目录下去找这个模块,如果在当前
目录下没有找到这个文件的话,那么就去环境变量里面的目录找
过程如下:
import sys
print(sys.path) # 看系统环境变量
import model
model.run() 二、以下是一些Python中常常被使用的内置模块 import random print(random.random()) # 随机浮点数,默认取0-1,不能指定范围
print(random.randint(1, 20)) # 随机整数
print(random.randrange(1, 20)) # 随机产生一个range
print(random.choice([1,2,3,4,5])) # 随机取一个元素
print(random.sample([1,2,3,4,'6'], 3)) # 从序列中随机取几个元素,返回的是一个list
print(random.uniform(1, 88888)) # 随机取浮点数,可以指定范围 x = [1, 2, 3, 4, 5, 6]
random.shuffle(x) # 洗牌,打乱顺序,会改变原list的值 import string
print(string.ascii_letters + string.digits) # 所有的数字和字母
print(random.randint(1, 20)) # 随机整数
print(random.choice([1,2,3,4,5])) # 随机取一个元素
print(random.sample('hello', 3)) # 从序列中随机取几个元素,返回的是一个list
print(random.uniform(1, 88888)) # 随机取浮点数,可以指定范围
x = [1, 2, 3, 4, 5, 6]
random.shuffle(x) # 洗牌,打乱顺序,会改变原list的值
print(x) import json
# json很像python的字典类型,但是json里面只能是双引号,不能是单引号,json串实际上就是一个字符串 json_str = """
{
"username": "niuhanyang",
"passwd": 123456,
"flag": true
}
"""
fr = open('users')
json_dic = json.loads(json_str) #json串(字符串)转成字典,loads方法是把json转成字典
json_dic_file = json.load(fr) #json串(字符串)转成字典,load方法是传入一个文件对象,然后load方法自动去读这个文件的内容,然后转成字典 print(json_dic_file)
print(type(json_dic_file)) d = {
"hhh": {
"price": "90000",
"password": "123456"
},
"admin": {
"password": "123456",
"money": 8000
}
} fw = open('users.json','w')
dic_str = json.dumps(d) #把字典变成json串(字符串)
json.dump(d,fw)
print(dic_str)
print(type(dic_str)) 注意:
#json可以用字典和list
#dump和dumps字典转json串的
#load和loads是json串转字典
#带s就和字符串沾边,不带s和文件对象沾边
Python学习杂记_13_模块(一)_基础的更多相关文章
- Python学习杂记_14_模块(二)_常用模块
常用模块 random 模块 import random print(random.random()) # 随机浮点数,默认取0-1,不能指定范围 print(random.randint(1, 20 ...
- python学习笔记五 模块上(基础篇)
模块学习 模块,用一砣代码实现了某个功能的代码集合. 类似于函数式编程和面向过程编程,函数式编程则完成一个功能,其他代码用来调用即可,提供了代码的重用性和代码间的耦合.而对于一个复杂的功能来,可能需要 ...
- python学习笔记五 模块下(基础篇)
shevle 模块 扩展pickle模块... 1.潜在的陷进 >>> import shelve>>> s = shelve.open("nb" ...
- Python学习 Part4:模块
Python学习 Part4:模块 1. 模块是将定义保存在一个文件中的方法,然后在脚本中或解释器的交互实例中使用.模块中的定义可以被导入到其他模块或者main模块. 模块就是一个包含Python定义 ...
- python学习之argparse模块
python学习之argparse模块 一.简介: argparse是python用于解析命令行参数和选项的标准模块,用于代替已经过时的optparse模块.argparse模块的作用是用于解析命令行 ...
- Python学习系列(八)( 面向对象基础)
Python学习系列(八)( 面向对象基础) Python学习系列(七)( 数据库编程) 一,面向对象 1,域:属于一个对象或类的变量.有两种类型,即实例变量—属于每个实例/类的对象:类变量—属于类 ...
- Python学习-第三天-面向对象编程基础
Python学习-第三天-面向对象编程基础 类和对象 简单的说,类是对象的蓝图和模板,而对象是类的实例.这个解释虽然有点像用概念在解释概念,但是从这句话我们至少可以看出,类是抽象的概念,而对象是具体的 ...
- Python学习day19-常用模块之re模块
figure:last-child { margin-bottom: 0.5rem; } #write ol, #write ul { position: relative; } img { max- ...
- Python学习day18-常用模块之NumPy
figure:last-child { margin-bottom: 0.5rem; } #write ol, #write ul { position: relative; } img { max- ...
随机推荐
- P1182 数列分段Section II
P1182 数列分段Section II 题目描述 对于给定的一个长度为N的正整数数列A[i],现要将其分成M(M≤N)段,并要求每段连续,且每段和的最大值最小. 关于最大值最小: 例如一数列4 2 ...
- 发送广播重新挂载SD卡,使图库可以及时显示自己保存的图片(无需手机重启)
我们或许经常会遇到这种情况,明明保存了图片,但是当你打开图片时,却没有找到这张图片,手机重启之后才能看到.这是因为SD卡并没有重新挂载,图库也无法把这张图片加载进去,解决这个问题非常简单,只需要我们模 ...
- php jsonp单引号转义
php中jsonp输出时一般用下面的格式: callbackname('json string'); 如果中间的json string中含有单引号,这个输出就是有问题的,调用方一般是无法处理的,所以我 ...
- 自动化测试(三)如何用python写一个函数,这个函数的功能是,传入一个数字,产生N条邮箱,产生的邮箱不能重复。
写一个函数,这个函数的功能是,传入一个数字,产生N条邮箱,产生的邮箱不能重复.邮箱前面的长度是6-12之间,产生的邮箱必须包含大写字母.小写字母.数字和特殊字符 和上一期一样 代码中间有段比较混沌 有 ...
- python /usr/bin/python^M: bad interpreter: No such file
今天在WingIDE下写了个脚本,传到服务器执行后提示: -bash: /usr/bin/autocrorder: /usr/bin/python^M: bad interpreter: No suc ...
- CPU指令集不同导致的core分析
最近程序需要支持CGSL系统运行,测试中发现相同操作系统的两台机器,编译机运行正常,测试机coredump.core信息汇总如下,可以看出是由于测试机不支持编译后的指令导致的问题: Program t ...
- STL之queue&stack使用简介
queue 队列也是一个线性存储表,与后进先出的堆栈不同,元素数据的插入在表的一端进行,在另一端删除,从而构成了一个先进先出(First In First Out) 表.插入一端称为队尾,删除一 ...
- Scrapy 学习笔记(一)数据提取
Scrapy 中常用的数据提取方式有三种:Css 选择器.XPath.正则表达式. Css 选择器 Web 中的 Css 选择器,本来是用于实现在特定 DOM 元素上应用花括号内的样式这样一个功能的. ...
- PHP路径相关 dirname,realpath,__FILE__
比如:程序根目录在:E:\wamp\www 中 1. __FILE__ 当前文件的绝对路径 如果在index.php中调用 则返回 E:\wamp\www\index.php 下面再看一 ...
- Win10 Ubuntu18.04 编译安装 nignx
nginx 下载页 http://nginx.org/en/download.html wget http://nginx.org/download/nginx-1.14.0.tar.gz //安装依 ...