- 博客(54)
- 收藏
- 关注
原创 想偷懒的时候就来看一眼
多少人,出于恐惧技术的心理,还没开始就放弃了…… 多少人,终于开始了,弱弱地坚持却最终败给了懒惰…… 多少人,战胜了懒惰,却苦于没有正确的方法…… 多少人,迷茫地坚持,却看不清未来的方向…… 本人,互联网行业测试工程师一枚,为了更好的学习测试,开始学习编程,通过一段时间的摸爬滚打,总结出
2015-06-25 21:18:16 611
原创 __future__的使用
python高版本中有很多新的特性,这些特性其实在低版本中就可以使用了,通过导入__future__模块的功能来使用:from __future__ import **功能例如:在低版本中的除运算会直接取整:引入新特性后,除运算可以保留浮点数:
2015-09-16 16:51:29 457
原创 导入模块
一、直接导入模块import mathprint math.log(10)二、导入模块中的某个函数from math import logprint log(10)注意:由于直接导入某个函数调用的时候不写模块名,所以有时会导致混淆,我们可以在导入函数时进行重命名:from math import log as new_logprint new_log
2015-09-15 19:11:21 655
原创 模块和包的概念
一、模块【定义】.py的文件名就叫模块【作用】有了模块后,我们可以把代码写进不同的.py文件中,并且在不同的.py文件中,可以写相同的变量名和函数名也没有关系。【调用方法】调用别的模块的函数,需要先导入该模块import time ----------------->在这里先导入该模块time.time()二、包【定义】如果有相同的模块名,
2015-09-15 16:55:42 698
原创 偏函数
偏函数:可以快速创建一个含有某个默认参数的函数,以简化调用。int()有个默认参数base,默认值是10,当不传参数时,会默认将其他类型的参数按照10进制转化为整型。如果我们需要按照2进制来转化,每次调用int()都需要这样写:int('123',base=2),会很麻烦。这时我们可以创建一个新的函数:def int2(x,base=2): return
2015-09-15 12:20:13 488
原创 匿名函数
在高阶函数中可以引入函数作为参数,这个引入的函数可以用匿名函数,可以减少代码量。例如之前提到的map函数:def f(x): return x*xmap(f,[1,2,3,4])这是常规写法,我们可以用匿名函数:map(lambda x:x*x,[1,2,3,4])1、匿名函数没有函数名,用lambda来表示;2、lambda后的x表示参数;3、匿名函数只
2015-09-09 16:27:37 457
原创 python中的返回函数
函数的返回值可以是函数:def f(): print 'f...' def g(): print 'g...' return g执行x=f()后,x=g,只是指向g(),但并没有执行g()。只有执行了x(),才相当于执行了g()。所以,返回函数其实就是延后了函数具体计算的时间。我们看一下具体执行结果:
2015-09-09 11:12:32 686
原创 python中的高阶函数
高阶函数:能接收函数作为参数的函数。一、map(f,list):python内置的一个高阶函数,需要一个函数和一个list作为参数,传进来的函数会一一作用于list中的每个元素,然后返回一个新的list。二、reduce(f,list)python内置的一个高阶函数,同样,需要一个函数和list作为参数,传进来的函数会反复作用于list中的元素,然后返回最终结果。
2015-09-07 16:59:11 678
原创 列表生成式
生成[1,2,3,......100],我们用range(1,101)但是要生成[1*1,2*2,3*3......100*100]的话,我们可以用到循环:但是循环太麻烦,这种情况下,我们可以用列表生成式来完成:[x*x for x in range(1,101)]
2015-09-02 11:37:41 599
原创 python中遍历dict的value
之前提到过,在dict中,可以通过d[索引]或者d.get[索引]两种方式来获取某个key对应的value,其实,python有内置的函数,可以直接遍历dict中的value一、d.values():这个函数可以将dict中的value全部拿出来,变成一个list,我们遍历这个list就可以拿到所有的value了上图中,itervalues()的作用和values()一样,只是it
2015-08-31 19:56:38 32659 1
原创 python中有序集合的索引遍历
有时候,我们需要拿到一个集合中某个元素的索引,对于有序集合来说,索引遍历有两种方式:一、enumerate(l)函数:利用这个函数可以将有序集合变成一个含有N个tuple的list,每个tuple由索引和元素本身组成。二、zip()函数:这个函数可以将两个list变成一个list,这个list就包含N个tuple
2015-08-31 19:26:17 4474
原创 python中的切片操作
一、对list进行切片【正向切片】1、L[0:9] 从索引是0的元素开始截取,直到索引为9停止,但不包括索引9。如果开始索引是0,就可以省略:2、L[1:9] 还可以从任意索引开始3、L[1:] 结束索引省略的话,表示直到结尾4、L[:] 开始索引和结束索引同时省略的话,表示
2015-08-31 17:11:35 3520
原创 默认参数和可变参数
一、默认参数默认参数的作用是为了简化调用,如果我们不传参数,就会使用默认参数,如果传了参数,就会使用传进来的参数。注意:如果有必填参数时,默认参数应该写在必填参数后。在上面这个例子中,name这个参数就是一个默认参数,当调用函数时,如果不传参数,就默认使用world这个参数值,如果传了参数,就使用传进来的参数值。二、可变参数1、可变参数需要在参数前加*def
2015-08-28 18:20:27 1005
原创 自定义函数
自定义函数,需要写def、函数名、括号、参数、冒号。函数遇到return则会停止运行并返回值。如果没有return语句,则也是会返回值的,只不过返回的是None:
2015-08-25 19:40:35 561
原创 python中调用函数
python中有内置的函数,我们可以直接调用来使用。调用函数需要写函数名和参数。一、abs():求绝对值的函数,这个函数需要传一个整数或者浮点数作为参数。如果参数个数传递错误,函数会报错:需要一个参数,但是给了两个如果参数类型传递错误,函数也会报类型错误:二、cmp():比较大小函数,需要传进两个参数cmp(x,y)当x>y,返回1;
2015-08-25 19:27:26 2448
原创 python中的set
set是一系列无序、不重复、不可变元素的组合。一、创建set:调用set(),并传入一个list若list中含有重复的元素,则set会自动去重,示例如下:二、访问set:由于set中的元素是无序的,所以不能用索引来进行访问,访问set中的元素用in语句。用in语句时,有这个元素则返回True,没有这个元素则返回False。三、
2015-08-25 16:26:23 818
原创 python中的dict
如果要保存一一对应类型的数据,可以用dict来表示,dict中所有的数据都是键值成对的。一、创建dict(创建dict用{}表示)dict的特点:(1)dict中的元素都是键值成对的(2)dict是无序的(3)dict的查找效率很高(3)dict是通过key值来查找的,所以key值不能重复,也不可变二、访问dict中的元素(1)通过d[]来访问
2015-08-21 15:49:22 728
原创 退出循环:break和continue
一、break:退出整个循环例:计算1-100的和,当x>100时,退出整个循环。二、continue:退出此次循环,进入下一轮循环例:计算及格的成绩的总和。
2015-08-20 15:56:05 1152
原创 python中的循环语句
一、if...else...有几点需要注意:1、if和else后要加冒号2、python用四个空格的缩进来表示代码块,所以一定要严格注意缩进3、结束缩进需要多敲一行回车二、if...elif...else嵌套循环
2015-08-19 18:12:09 754
原创 Python中的tuple
tuple是一种有序的集合,和list类似,不同的是,tuple一旦创建就不能再修改了。一、创建tuple1、创建tuple用()来表示2、创建空tuple:3、创建单元素tuple:需要在元素后加逗号4、创建“可变”tuple用list来表示tuple中的其中一个元素,修改list的元素值,这样tuple的元素没有变(指向没有变),但是却可
2015-08-19 16:25:19 837 2
原创 Python中有关list的增删改查
list是Python内置的一种数据类型:列表,是一种有序的集合。一、访问list中的元素1、索引访问:(索引从0开始,第一个元素为L[0])上图访问的是list中的第二个元素。2、倒序访问:(倒序访问时,倒数第一个元素的索引为-1)二、创建list1、由于Python是动态语言,所有list中包含的元素不一定必须是同一种数据类型。2、我
2015-08-18 20:04:29 12306 3
原创 Python中的布尔类型
Python的布尔类型有两个值:True和False(注意大小写要区分)逻辑运算:1、与:and(两个都为True,结果才为True)2、或:or(只要一个为True,则为True)3、非:not(把True变为False,把False变为True)短路运算:布尔类型还可以与其他数据类型进行逻辑运算,Python规定:0、空字符串、None为False,其他
2015-08-10 20:56:14 16700
原创 Unicode字符串
计算机只能处理数字,要处理文本,就必须先把文本转化成数字处理。最早的计算机在设计时采用8bit为1个字节,所以,一个字节能表示的最大整数是255(11111111),0~255被用来表示一些英文字母、数字、符号,这就是ASCII编码。 要表示中文,一个字节肯定是不够的,至少需要两个字节,中国制定了GB2312编码,其他国家也制定了一些编码。 为了将这写编码统一起
2015-08-10 17:20:46 965
原创 Python中如何定义字符串
字符串可以用''或者""括起来表示。如果字符串本身包含'怎么办?比如我们要表示字符串 I'm OK ,这时,可以用" "括起来表示:"I'm OK"类似的,如果字符串包含",我们就可以用' '括起来表示:'Learn "Python" in imooc'如果字符串既包含'又包含"怎么办?这个时候,就需要对字符串的某些特殊字符进行“转义”,Pyth
2015-08-10 16:43:36 10558 1
原创 Python中的变量
一、命名:Python中的变量命名规则为:只能包括字母、数字、下划线_,且不能由数字开头二、声明、赋值1、Python是动态语言,不需要提前声明变量的类型,可以把任意数据类型赋值给变量,并且同一变量可以反复赋不同数据类型的值。2、可以将变量复制给变量eg:a=1b=aa='123'print b此时打印出来的结果b是1,原因是b指向了a指向的1,当a的指向发
2015-08-04 17:30:58 442
原创 Python中的print语句
1、print可以打印字符串例:print 'hello world'或者print 'hello world'重要:print后还可以同时打印多个字符串,用,隔开,打印出来时,遇到,会显示为空格,如下图:2、print可以打印数字3、print可以打印计算结果
2015-08-03 19:37:37 1265
原创 Python的基本数据类型
Python有五种基本数据类型:1、整数:整数的写法和一般在数学中的写法一样,例如:1 0 -1等2、浮点数:这里说一下浮点数中的科学计数法,0.1×10^7可以表示为:0.1e73、字符串:Python中的字符串用‘’或者“”表示,这个表示不计入字符串的长度。4、布尔值:True和False(注意区分大小写)布尔值可以用and、or、not来进行
2015-08-03 18:27:57 917
原创 第一个Python小程序
安装好Python环境后,我们来尝试写第一个Phthon小例子:1、在Notepad++中编辑代码,如下图:2、保存该文件为:hello.py3、打开命令行,进入源文件所在的目录:4、运行:python hello.py
2015-08-03 17:57:52 481
原创 在windows中安装Python
Python是一种高级语言,相比C、JAVA来说,Python不需要编译,运行速度稍微慢一些,但是Python的代码量相对来说较少一些。 Python可以用来写网站、也可以用来写系统工具和脚本等。 下面来说一下在windows上安装python:1、在官网https://www.python.org/downloads/下载python 2.
2015-08-03 16:49:55 431
原创 static关键字的使用
java中被static修饰的成员成为静态成员或类成员,它属于整个类所有,而不是某个对象所有。静态成员可以使用类名直接访问,也可以使用对象名进行访问,不过推荐使用类名来进行访问。使用static可以修饰变量、方法和代码块。一、使用static修饰变量二、使用static修饰方法1、静态方法中只能直接调用同类中的静态成员,不能直接调用非静态成员。若想调用非静态成员,可以使
2015-05-24 12:13:57 624
原创 java中的构造方法
1、使用new+构造方法,创建一个新的对象。2、构造方法是定义在java类中用来创建并初始化对象的方法,构造方法与类名相同且没有返回值,参数可有可无(无参构造方法、有参构造方法)。3、当没有指定构造方法时,系统会自动添加无参构造方法。4、当有指定构造方法时,无论是有参、无参的构造方法,都不会自动添加无参的构造方法。5、构造方法的重载:和普通方法的重载一样,调用时会根据不同参
2015-05-24 11:14:29 2874
原创 成员变量和局部变量的区别
1、作用域不同:成员变量的作用域在整个类的内部都是可见的;局部变量的作用域仅限于定义它的方法。2、初始值不同:java会给成员变量一个初始值,但不会给局部变量初始值。3、同一个方法中不能有同名的局部变量; 不同方法中可以有同名的局部变量。4、两类变量同名时,局部变量的优先级更高。
2015-05-22 15:42:02 653
原创 如何使用java中的数组
使用数组需要有三个步骤:一、声明数组语法:数据类型【】 数组名; 或者数据类型 数组名【】;二、分配空间:语法:数组名=new 数据类型【数组长度】;可以将声明和分配空间一步完成:数组类型【】 数组名=new 数据类型【数组长度】三、赋值数组名【下标】=值;另外,java中提供了两种便捷的使用数组的方法:1、int[
2015-05-22 11:26:26 647
原创 java的流程控制语句
一、if语句二、if...else语句条件成立就执行代码块1,反之执行代码块2if...else语句还有两种较复杂的表现形式:多重if:嵌套if:三、switch语句注意:表达式只能是整形或字符型; 未遇到break语句,会一直向下执行; 没有找到相应的匹配时,会执行defaul
2015-05-19 16:20:27 1877
原创 java中的运算符
java中的运算符可分为以下5种:算数运算符赋值运算符比较运算符逻辑运算符条件运算符一、算数运算符注意:++ --只能用来操作变量,不能操作数值。操作变量时有两种情况:i++:先使用后自增++i:先自增后使用--和++的使用方法一致。二、赋值运算符三、比较运算符比较运算符是用来比较两个数据的大小,结果是true或者false。
2015-05-19 16:02:04 541
原创 java中的常量
所谓常量,我们可以理解为是一种特殊的变量,它的值被设定后,在程序运行过程中不允许改变。语法:final 常量名 = 值;程序中使用常量可以提高代码的可维护性。例如,在项目开发时,我们需要指定用户的性别,此时可以定义一个常量 SEX,赋值为 "男",在需要指定用户性别的地方直接调用此常量即可,避免了由于用户的不规范赋值导致程序出错的情况。伙计们注意啦:常量名一
2015-05-18 19:22:06 594
原创 java的自动类型转换和强制类型转换
一、自动类型转换在 Java 程序中,不同的基本数据类型的数据之间经常需要进行相互转换。例如:,代码中 int 型变量 score1 可以直接为 double 型变量 score2 完成赋值操作,运行结果为: 82.0 这种转换称为自动类型转换。当然自动类型转换是需要满足特定的条件的:目标类型大于元类型二、强制类型转换当程序中需要将 do
2015-05-18 19:08:46 3978
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人