python 基础知识学习

python的包级别高于模块,其树结构可以参看如下示意图

包1

    |_ 子包1.1

         |_ 子包1.1.1

         |_ 模块1.1.1

    |_ 模块1

    |_ 模块2

 

python查看帮助文档

第一种方法在命令行中查看模块的帮助文档

python #开启python程序

from sys import argv #导入要查看的模块

help(argv) #查看相关帮助

第二种方法查看具体指令的帮助文档

python -m pydoc open # open 是想要查看的目标命令名称

格式化字符串

在python3.6中可以直接通过f开头的字符串完成该功能

print(f"hello {变量名}")

在python2.7中通过 % 或者format方式完成

stringToBePrinted = 'hello %(gustName)+s,i am %(age)d' %{'gustName':'shawn.li','age':18}

定义一个函数

def helloFunc(theNameToSayHllo):

    print("hello",theNameToSayHllo)

调用一个函数

from helloFunc import helloFunc

theName = raw_input("type in the name !")

helloFunc(theName)

python 以冒号(:)作为一个新代码块开始的标志,以缩进区分代码块之间的界限,冒号之后一定是缩进,否则python会报错

if/for/while/def/classs 等都是新代码块,语句结尾时候都是 冒号
    然后在相关代码块中的代码,都以相同的缩进表示属于当前代码块;

然后是新的代码块 if/for/while/def/classs 冒号
    在当前代码块中的代码,都以相同的缩进表示属于当前代码块;

import 与 from 包 import 模块的使用场景区别

1、如果你要经常存取模块的属性和方法,且不想一遍遍地敲入模块名,使用 from module import。

2、如果你想要有选择地导入某些属性和方法,而不想要其它的,使用 from module import。

3、如果模块包含的属性和方法与你的某个模块同名,你必须使用 import module 来避免名字冲突。

配置项目骨架

需要安装的工具包

distribute 、virtualenv、nose

注意事项,要先安装virtualenv并进行配置,再安装nose,这样可以为不同的项目安装不同的相互冲突的软件包版本,同时还不会污染主系统级别的配置。

第一步,安装distribute包

pip install distribute

第二步,安装虚拟环境包

pip install virtualenv

第三步,在目标文件夹.venvs下创建一个叫lpthw的虚拟环境

mkdir .venvs
virtualenv --system-site-packages .venvs/lpthw

第四步,激活lpthw虚拟环境,每次重新运行软件的时候都要运行该指令以使响应的虚拟环境被重新激活

.\.venvs\lpthw\Scripts\activate

第五步,在虚拟环境中安装nose

(lpthw) D:\python\pythonProj>pip uninstall nose

卸载工具包与退出虚拟环境的指令

pip unistall 包名称
D:\python\pythonProj>.\.venvs\lpthw\Scripts\deactivate

第六步,创建一个项目框架,其中NAME是存放模块的包的名字,在test文档中,import的包就是这个名字

D:\python\pythonProj\pythonLearning>..\.venvs\lpthw\Scripts\activate
    # 重开cmd后,重新激活相关目录中的虚拟环境

(lpthw) D:\python\pythonProj\pythonLearning>mkdir projectsFramework
    # 创建一个存放所有项目的目录

(lpthw) D:\python\pythonProj\pythonLearning>cd projectsFramework

(lpthw) D:\python\pythonProj\pythonLearning\projectsFramework>mkdir skeleton
    # 创建新项目的基础目录
(lpthw) D:\python\pythonProj\pythonLearning\projectsFramework>cd skeleton
    # 进入创建的项目目录

(lpthw) D:\python\pythonProj\pythonLearning\projectsFramework>mkdir bin NAME tests docs
    # 创建四个文件夹

第七步,在NAME 和 tests 文件夹下分别创建一个_init_.py文件

在poweShell中的指令为

PS C:\Users\Dell> cd D:\python\pythonProj\pythonLearning\projectsFramework
PS D:\python\pythonProj\pythonLearning\projectsFramework> new-item -type file NAME/_init_.py
PS D:\python\pythonProj\pythonLearning\projectsFramework> new-item -type file tests/_init_.py

第八步,在projectsFrameswork目录下创建一个setup.py文件,拷入以下代码

try:
    from setuptools import setup
except ImportError:
    from distutils.core import setup

config = {
    'description':'My project',
    'author':'shawn.li',
    'url':'toBeFilled',
    'dowload_url':'toBeFilled',
    'author_email':'shawn.yim@foxmail.com',
    'version':'0.01',
    'install_requires':['nose'],
    'packages':['NAME'],
    'scripts',[],
    'name':'skeleton'
}

setup(**config)

第九步,在tests文件夹下创建NAME_tests.py文件,测试文件的名称格式严格按照这种格式来写“模块名称_tests.py”,拷入一些简单的代码,通常项目目录路径不在sys.path中,需要单独append,但是在pythonShell中append之后每次退出,保存的路径就会丢失,因此可以直接写到脚本中。

from nose.tools import *
import sys
sys.path.append('D:\python\pythonProj\pythonLearning\projectsFramework\skeleton\NAME')
import NAME

def setup():
    print("setup!")
    
def teardown():
    print("teardown!")
    
def test_basic():
    print("i ran!")

第十步,在projectsFramework目录下运行指令nosetests

nosetests

得到运行结果

(lpthw) D:\python\pythonProj\pythonLearning\projectsFramework\skeleton>nosetests

.
----------------------------------------------------------------------
Ran 1 test in 0.012s

OK

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值