跟Java语言一样,python语言也有类的概念,直接使用class关键字定义python类。在python类,定义类的方法。然后直接使用类的初始化调用自身,获取相应的属性。以下是小编为你整理的学python要学什么
*步,双击打开eclipse开发工具,新建python文件,添加编码格式,新建类User
第二步,在类中定义一个变量userNum,并赋值为0,注意排列位置
第三步,定义函数__init__,有五个参数,self、name、age、sex和addr
第四步,再定义一个函数showUser,打印出User类对应的属性值,
第五步,在类的下面定义一个对象变量user,然后调用类User,传入属性值
第六步,接着调用User类中的方法showUser,然后运行这个文件,打印出属性值
建立变量str在打印输出的时候可以截取其中的部分文本,例如print(str[0:-1]),python中的文本索引是从0开始的,-1则是末尾的开始位置,可以输入print(str[-1])查看*一个文字
如果需要重复输出文本可以使用print(str*数字)这种格式,数字表示文本重复的次数 ,比如print(str*2)
“+”既是运算符号,也是文本连接符号,连接字符串的时候使用就好了
如print(str+“ma ma hong”)
转移字符使用"",我们重用的换行就是“n”
print("myn name")
如果不需要转义,就在字符串前面加“r”即 print(r"myn name")
需要注意的是python里面的字符串不能更改,如将str的首字母改为L
str[0]=L python会报错
此外,还有就是格式化字符串,和C是一致的,搞不清是什么类型的时候用%s就好了
如“python %s”% “language”
函数定义
def 函数名(参数名):
函数体
说明:
如果函数有返回体,就使用return 返回值;
b如果函数没有返回体,就使用return None或者return;
如果函数有多个返回值,就使用return x1,x2...。
这里主要讲述自定义函数,系统函数请参照https://docs.python.org/2/library/functions.html#abs
3例子:
一元二次方程的定义是:ax² + bx + c = 0
请编写一个函数,返回一元二次方程的两个解。
注意:Python的math包提供了sqrt()函数用于计算平方根。
import math
def equation(a,b,c):
temp=b*b-4*a*c
if temp<0:
return
x1=(-b+math.sqrt(temp))/(2*a)
x2=(-b-math.sqrt(temp))/(2*a)
return x1,x2
print equation(2,3,0)
默认参数:主要是方便调用,默认参数一定在必须参数后面。
例子:
请定义一个 greet() 函数,它包含一个默认参数,如果没有传入,打印 'Hello, world.',如果传入,打印 'Hello, xxx.'
def greet(n='world'):
print 'hello,',n
可变参数:
定义:def fn(*args):
print args
python 解释器 会把传入的一组参数组装成一个tuple传递给可变参数。因此在函数内部,直接把变量args看成一个tuple 就好了
例子:请编写接受可变参数的 average() 函数。
import math
def avg(*args):
if len(args)==0:
return 0.0
else:
return sum(args)/len(args)
print avg(1,2,3)
切片
1)切片:主要用于对集合取指定范围的元素。
2)形式 L[first-index:last-index,length]。
说明:
从索引为first-index的元素取到索引为last-index的元素,其中不包含last-index元素;
first-index 为空,则默认从0开始,如果两个参数都为空,则表示从头到尾获取元素;
length 表示每隔几个元素获取元素;
默认length为1 ,不隔元素获取;若length为2,则每隔一个元素;
若first-index为负数,则是倒序切片,倒序切片从-1开始;
f若 fist-index为正数,first-index从0开始;
例子1:
range()函数可以创建一个数列:
range(1, 101)
[1, 2, 3, ..., 100]
请利用切片,取出:
1. 个数;
2. 3的倍数;
3. 不大于50的5的倍数。
print L[0:10],'n',L[2::3],'n',L[4:50:5]
例子2:
利用倒序切片对 1 - 100 的数列取出:
* *10个数;
print L[-10:]
字符串切片:我们可以把字符串看成一组list,所以也可以对字符串进行切片。
例子:
字符串有个方法 upper() 可以把字符变成大写字母:
'abc'.upper()
'ABC'
但它会把所有字母都变成大写。请设计一个函数,它接受一个字符串,然后返回一个仅首字母变成大写的字符串。
import math
def upperFirstChar(str):
return str[0:1].upper()+str[1:]
Web方向的练手项目
这个其实是肯定不用多少的了。Python的练手项目就是可以做一个网站了。我们可以做一个属于自己的博客。在做博客的时候,我们可以巩固的知识点是
Html+CSS+JS的基础知识,以及熟练的运用Python的Web开发框架(例如Django或者Flask)做出一个属于自己的网站。
做一个网络数据抓取工具
也就是我们常说的网络爬虫。可以找到一个自己喜欢的网站。试着抓取一些网站数据,在抓取数据的过程中,你会遇到例如 反抓取 需要登陆 验证码验证以及IP检测等多种问题。但这恰恰不就是提高的过程么。或许,你也可能写一个自己的“小百度”呢、
做一个图像识别的项目
不要觉得太难。我们可以从一个简单的项目开启。验证码就是一个图片。我们是不是可以试着识别一下验证码上面的文字?不要觉得麻烦,也不要觉得太过简单。所有复杂的事情都是从简单开始的。学习验证码识别对于我们写网络爬虫是不是特别有用呢?在后期深入的过程中,你还可以做一个图像识别软件。
做一个Python聊天机器人
是不是觉得现在手机软件中的智能聊天软件很神奇。你同样可以做一个属于自己的聊天机器人。前期我们可以做一个应答式的,也就是所有的会话就是存储在数据库中。后期的话可以学习人工智能学习。让你的机器人更加智能。