由于有C#开发基础,感觉学习Python应该不难,主要是一些语法了,再加上现在互联网这么发达。

感觉还是要有思路,否则学什么也只能是什么。 话不多说,简单发下这几天的学习成果吧;

第一次写博客,大家不要见笑啊 简单的语法就不多说了,随便搜搜就可以得到。()

单元测试来了: 要做两个测试:

# 用于判断质数

import math

def isPrime(n):

  print ("验证数字"+str(n)+"是否质数开始")

  print ("开平方:"+str(round(math.sqrt(n))))

  if(n<=1):

    return False;

  for i in range(2,round(math.sqrt(n))):

#只需要判断到数的开平方数字即可

if(n % i==0): print (n/i)

return False;

return True;

# 用于判断一个12位的数字,最后一位是前11位除以7的余模

def isBarcode(n): print ("验证数字"+n+"是否符合规则开始")

  if(len(n)!=12):

    return False;

  ncount=int(n[0:11])#取前11位

  endNumber=int(n[-1]) #取最后1位

  print (ncount)

  print (endNumber)

  if(endNumber==ncount % 7):

    return True;

  else:

    print (ncount % 7)

  return False;

#这个文件保存为count.py。(名字随便起的了)

#下面开始验证 #保存为test.py

from count import isBarcode

from count import isPrime

import unittest

class Test(unittest.TestCase):

  print ("--Test--")

  def setUp(self):

  print ("--start--")

  #先来两个正确的号码

  def test_case(self):

    self.assertTrue(isBarcode("126112611262"),"it is not Barcode")

    self.assertTrue(isPrime(157),"it is 质数")

  def tearDown(self):

    print ("--End--")

print ("测试一下看显示在什么位置")

if __name__=="__main__":

unittest.main()

在代码中我们看到有这样的一句代码:

if __name__=="__main__":

  unittest.main() 很有好奇的感觉,网上搜搜这是什么意思,

见 http://www.cnblogs.com/xuxm2007/archive/2010/08/04/1792463.html,感谢这位仁兄 读了几遍,终于读懂,果然很强! 说白了就是写一些代码,给自己用的,类似于private是不是?又担任着模块的入口(个人理解)。

看运行结果吧:

>>> ================================ RESTART ================================

>>> --unnitest:main模块

--Test--

测试一下看显示在什么位置

--start--

验证数字126112611262是否符合规则开始

12611261126

2 验证数字157是否质数开始

开平方:13

--End-- .

----------------------------------------------------------------------

Ran 1 test in 0.045s

OK

>>> #哈,说明验证通过了! 但是不知道大家是不是发现多了一个字符串"

--unnitest:main模块",这个是我自己加的了,开源的东西就是好,随便玩;

就在C:\Python33\Lib\unittest下面的main.py增加了一行代码:

from . import loader, runner

from .signals import installHandler

__unittest = True

print ("--unnitest:main模块")#这是新增加的

##好了,我们做个出错的单元测试吧,157改成156

结果就是这样的了:

>>> ================================ RESTART ================================

>>> --unnitest:main模块

--Test--

测试一下看显示在什么位置

--start--

验证数字126112611262是否符合规则开始

12611261126

2

验证数字156是否质数开始

开平方:12

78.0

--End--

F

======================================================================

FAIL: test_case (__main__.Test)

----------------------------------------------------------------------

Traceback (most recent call last): File "C:\Python33\test.py", line 11, in test_case self.assertTrue(isPrime(156),"it is not 质数") AssertionError: False is not true : it is not 质数

----------------------------------------------------------------------

Ran 1 test in 0.052s FAILED (failures=1)

>>> #出错了!!!!!!!!156不是个质数啊;再来一次:这次把126112611262换成126112611261,156保持不变

>>> ================================ RESTART ================================

>>>

--unnitest:main模块

--Test--

测试一下看显示在什么位置

--start--

验证数字126112611261是否符合规则开始

12611261126

1

2

--End--

F

======================================================================

FAIL: test_case (__main__.Test)

----------------------------------------------------------------------

Traceback (most recent call last): File "C:\Python33\test.py", line 10, in test_case self.assertTrue(isBarcode("126112611261"),"it is not Barcode") AssertionError: False is not true : it is not Barcode

##结束;呀呀呀,第一个提示之后第二个不执行啦?!(怎么回事?,可以做2个单元测试吗?求解)

----------------------------------------------------------------------

Ran 1 test in 0.033s

FAILED (failures=1)

>>> #我用的IDLE (Python GUI),弹出提示比较慢,很多代码还是手敲;不过我感觉这也是它的魅力吧

#感谢虫师,正是参考了你的书才能模仿出这样的代码(关于selenium的),我学Python也是要做自动化测试(嘿嘿)

#很多东西还得进一步摸索,一些原理也不是很懂,还得加油!

#写在C罗的葡萄牙进4强的当天,马上就是比利时VS威尔士,希望贝尔可以和C罗来一场较量,哈哈。

学习Python的第一课(简单的单元测试)的更多相关文章

  1. Python作业第一课

    零基础开始学习,最近周边的同学们都在学习,我也来试试,嘿嘿,都写下来,下次不记得了还能来看看~~ Python作业第一课1)登陆,三次输入锁定,下次不允许登陆2)设计一个三级菜单,菜单内容可自行定义, ...

  2. 留念 C语言第一课简单的计算器制作

    留念 C语言第一课简单的计算器制作 学C语言这么久了.  /* 留念 C语言第一课简单的计算器制作 */   #include<stdio.h>  #include<stdlib.h ...

  3. web前端学习python之第一章_基础语法(二)

    web前端学习python之第一章_基础语法(二) 前言:最近新做了一个管理系统,前端已经基本完成, 但是后端人手不足没人给我写接口,自力更生丰衣足食, 所以决定自学python自己给自己写接口哈哈哈 ...

  4. web前端学习python之第一章_基础语法(一)

    web前端学习python之第一章_基础语法(一) 前言:最近新做了一个管理系统,前端已经基本完成, 但是后端人手不足没人给我写接口,自力更生丰衣足食, 所以决定自学python自己给自己写接口哈哈哈 ...

  5. 初学Python(第一课)

    今天整理一下关于Python初学者的基础知识部分的第一课,因为之前学习过C,所以过于基础的知识就不详细记录了. Python相对于C\C++来说,在语法方面已经很简单了:甚至对于JavaScript也 ...

  6. Python入门第一课——Python的起源、发展与前景!

    我们在做任何一件事情之前,我们都会通过各种渠道去搜集事情的信息,了解事情的来龙去脉,学习一门编程语言也是如此,只有知根知底,我们才能有明确的方向和目标,以及底气去完成这件事情,今天我带大家来看看Pyt ...

  7. 记录学习Python的第一天

    这是我的第一篇博客,也是我学Python的第一天. 写这篇博客主要目的是为了记下我学习Python的过程以及所学到的知识点.我所学的是Python3版本,我所学的内容有如下几点: 1.python3中 ...

  8. 一个Js开发者学习Python的第一天

    原文地址:小寒的博客 https://www.dodoblog.cn/blogs/5bf6b8fa0c09883d0f8aad13 作为一个有着足足两年半学习经验和一年半开发经验的js开发者,看着js ...

  9. 学习python的第一个小目标:通过requests+xlrd实现简单接口测试,将测试用例维护在表格中,与脚本分开。

    小白的学习方式:通过确定一个小目标来想办法实现它,再通过笔记来加深印象. 面对标题中的小目标我陷入了思考....嗯,首先实现利用xlrd库来取出想要的用例 首先用表格准备好用例,如图下: 先试下取nu ...

随机推荐

  1. 关于this,super的来源猜想

    this:this可以在成员函数中引用,调用成员函数函数,一般都是 obj.fun(): 这个成员函数的执行者就是当前类的对象, 所以,this应该是由此传递的. super:相对于this, 却不应 ...

  2. android 高效加载大图

    在写代码的时候就已经解释: /** * 计算samplesize的大小 * @param options 传一个BitmapFactory.Options 进去获取图片的大小和类型 * @param ...

  3. The 10 best sweet treats in Singapore

    Every time I walk out of Changi airport's air-conditioning into the humid outdoors, there's a sweet ...

  4. java 自带md5加密

    package test; import java.security.MessageDigest; import java.security.NoSuchAlgorithmException; pub ...

  5. Android webservice的用法详细讲解

    Android webservice的用法详细讲解 看到有很多朋友对WebService还不是很了解,在此就详细的讲讲WebService,争取说得明白吧.此文章采用的项目是我毕业设计的webserv ...

  6. tornado 协程的实现原理个人理解;

    tornado实现协程的原理主要是利用了(1)python里面的generator (2)future类和ioloop相互配合,两者之间的相互配合是通过gen.coroutine装饰器来实现的: 具体 ...

  7. F - To the Max

    Given a two-dimensional array of positive and negative integers, a sub-rectangle is any contiguous s ...

  8. IPC-管道

    内容提要: 管道简介 使用无名管道实现一个简单的本地文件服务器 使用标准I/O函数库提供的管道实现 使用popen实现本地文件服务器 有名管道-FIFO 使用FIFO改写本地文件服务器 管道和FIFO ...

  9. CSS3 里添加自定义字体

    添加自定义字体是从 CSS3 开始的,下载到的字体可以在网页中使用. 下载字体 在网上找字体下载,文件后缀名有 ttf.otf 等. 在 CSS 里加载字体 @font-face { font-fam ...

  10. 数据库update死锁

    比较常见的死锁场景,并发批量update时的一个场景: update cross_marketing set gmtModified = NOW(), pageview = pageview+ #ex ...