码迷,mamicode.com
首页 > 编程语言 > 详细

python第一弹快速入门

时间:2015-02-09 10:55:00      阅读:201      评论:0      收藏:0      [点我收藏+]

标签:

快速入门:
1.python的print语句,与子付款格式操作符(%)结合使用,可实现字符串替换功能。

print "%s is number %d" % ("python",1)

%s表示一个字符串来替换;
%d表示由一个整型来替换;
%f表示由一个浮点型来替换;

2.python语句也支持将输出到重定向到文件。符号>>用来定向输出。
>>> import sys
>>> log = open(‘/tmp/myprint.log‘,‘a‘)
>>> print >> log,‘Fail error:invalid input‘
>>> log.close()

3.程序输入和raw_input()内建函数
raw_input()内建函数,它将读取标准输入,并将读取到的数据赋值给指定的变量。
>>> phone=raw_input(‘Please input your phone number:‘)
Please input your phone number:18621530000
>>> print ‘you phone number is:‘,phone
you phone number is: 18621530000

4.python的注释
>>> #This is a comment //该行为注释语句
... print ‘This is a comment test‘
This is a comment test

5.python操作符
+
-
*
/
//
%
**

6.比较操作符,比较运算根据表达式的值返回布尔值。
<
<=
>
>=
==
!=(不等于)
<>(不等于,该种方法慢慢再被淘汰)

7.python逻辑操作符
and
or
not

8.变量和赋值
python是动态型语言,也就是说不需要预先声明变量的类型。变量的类型和值在赋值那一刻就被初始化。

9.数字
python所支持的五种基本数字类型:
整型(int)
     长整型(long)
     布尔值(bool) True被当成整型1,Faule被当成整型值0.
浮点值(float)
负数(complex)

10.字符串被定义为引号之间的字符集合。python支持使用成对的单引号或双引号,三引号可以用来包含特殊字符。使用索引操作符([])和切片操作符([:])可以得到子字符串。子字符串其特有的索引规则:
第一个字符的索引是0,
最后一个字符的索引是-1。

加号+用于字符串连接运算,星号*则用于字符串重复。
>>> a=‘pythonchina‘
>>> a*2
‘pythonchinapythonchina‘
>>> a[2]
‘t‘
>>> a[2:5]
‘tho‘
>>> a[3:]
‘honchina‘

11.列表和元祖
可以将列表和元祖当成普通的“数组”,它能保存任意类型的python对象。和数组一样,通过从0开始的数字索引访问元素,但是列表和元祖可以存储不同类型的对象。列表和元祖有几处比较重要的区别,列表元素用[]包裹,元素的个数及元素的值可以改变。元祖用小括号()包裹,不可以更改。元祖可以看成是只读的列表。通过切片运算[],[:]可以得到子集。

>>> alist = [1,2,5,‘a‘,‘abc‘]
>>> alist[3]
‘a‘
>>> type(alist)
<type ‘list‘>
>>> atuple=(‘rockets‘,‘2‘,‘1.24‘,‘a+1.8‘)
>>> atuple[-1]
‘a+1.8‘
>>> type(atuple)
<type ‘tuple‘>

12.字典
字典是python中的映射数据类型,工作原理类似perl中关联的数组或哈希表。由键-值(ker-value)对构成。几乎所有的python对象都可以用作键。
>>> adict = {‘host‘:‘earth‘}
>>> adict[‘port‘] = 80
>>> adict
{‘host‘: ‘earth‘, ‘port‘: 80}
>>> adict.keys()
[‘host‘, ‘port‘]

>>> for key in adict:
...     print key , adict[key]
...
host earth
port 80

13.代码块及缩进对齐
代码块通过缩进对齐表达式代码逻辑,程序的可读性更高。而且缩进能够清楚得表达一个语句属于哪个表达块。

14.if 语句
if expression:      //表达式的值非0或者布尔值True,则if_suite被执行。
     if_suite

#!/usr/bin/env python
# Filename: if.py

number=23
guess=int(raw_input(‘Enter an integer : ‘))

if guess==number:
     print ‘guess is equal number‘
elif guess<number:
     print ‘guess is not big than number‘
else:
     print ‘No, it is a little lower than that‘
    
print ‘Done‘

15.while循环
标准while条件循环语句的语法类似if,如下:
while expression:
     while_suite

语句while_suite会被连续不断地执行,直到表达式的值变为0或者False,接着python会执行下一句代码。类似if语句,python的while语句中的表达式也不需要用括号括起来。
>>> counter=0
>>> while counter < 3:
...     print ‘loop #%d‘ % (counter)
...     counter +=1
...
loop #0
loop #1
loop #2

16.for循环和range()内建函数
python中的for循环与传统的for循环不太一样,它更像shell脚本里的foreach迭代。python中的for循环可接受可迭代对象(例如序列或迭代器)作为参数,每次迭代其中一个元素。
>>> for item in {‘email‘,‘net-surfing‘,‘tv‘}:
...     print item
...
tv
net-surfing
email

print语句添加‘,‘之后,就可以让输出在同一行。

>>> for i in range(5):
...     print i
...
0
1
2
3
4

备注:range()内建函数用于生成数值范围。
>>> a=‘abc‘   //对于字符串的迭代
>>> for i in range(5):
...     print i,
...
0 1 2 3 4

range函数经常和len()函数用于字符串索引,这里我们要显示每个元素及其索引值。
>>> for i in range(len(a)):
...     print a[i],‘(%d)‘ % i
...
a (0)
b (1)
c (2)


seq = ["one","two","three"]
for i, element in enumerate(seq):
     seq[i] = ‘%d, %s‘ % (i, seq[i])
print seq


17.列表解析
我们可以在一行中使用一个for 循环将所有值放到一个列表中。
squared=[ x ** 2 for x in range(4)]
for i in squared:
    print i,
    
18.文件和内建函数,open()、file()
文件对象的方法属性必须通过句点属性标识方法访问。
属性是与数据有关的项目,属性可以是简单的数据值,也可以是执行对象,比如函数和方法。很多类、模块、文件、复数都拥有属性,我们如何访问对象属性?使用句点表示法,也就是在对象名和属性名之间加一个句点(.):
object.attribute
#!/usr/bin/python

filename = raw_input(‘Enter file name:‘)
fobj=open(filename,‘r‘)
for eachLine in fobj:
    print eachLine,
fobj.close()

19.错误和异常
编译时会检查语法错误,不过python也允许程序运行时检测错误。当检测到一个错误,python解释器就会引发一个异常,并显示异常的详细信息。要给你的代码添加错误检测及异常处理,只要将他们封装在try-except语句当中。try之后的代码组就是你打算管理的代码。except之后的代码组,则是你处理错误的代码。

#!/usr/bin/python
try:
     filename = raw_input(‘Enter file name:‘)
     fobj=open(filename,‘r‘)
     for eachLine in fobj:
          print eachLine,
     fobj.close()
except IOError, e:
     print ‘file open error:‘, e
    
20.函数
python是通过引用调用的,这意味着函数内对参数的改变会影响到原始对象。
如何定义函数?
def function_name([arguments]):
     "optional documentation string"
     function_suite
定义一个函数语法由def关键字及紧随其后的函数名。再加上该函数需要的几个参数组成,函数参数是可选的,这也是为什么将他们放到括号中的原因。

def addMe2Me(x):
    ‘apply + operation to argument‘
    return ( x + x)
print addMe2Me(‘pythonchina‘)
print addMe2Me(5.25)
print addMe2Me([-1,‘abc‘])

默认参数,函数的参数可以有一个默认值,如果提供有默认值,在函数定义中,参数以赋值语句的形式提供。事实上,这仅仅是提供默认参数的语法,它表示函数调用时如果没有提供这个参数,他就取这个值作为默认值。
def foo(debug=True):
    if debug:
        print ‘in debug mode‘
    print ‘done‘
foo()
foo(False)

21.类
类是面向对象编程的核心,它扮演相关数据及逻辑容器的角色。它们提供了创建真实‘对象’的蓝图,因为python并不要求你以面向对象的方式编程。
如何定义类?
class ClassName(base_class[es]):
     "optional documentation string"
     static_member_declarations
     method_declarations
    
class FooClass(object):
    """my very first class: FooClass"""
    version= 0.1
def _int_(self, nm=‘Joe Doe‘):
    """constructor"""
    self.name = nm # class instance (data) attribute
    print ‘Created a class instance for‘,nm
def showname(self):
    """display instance attribute and class name"""
    print ‘Your name is‘,self.name
    print ‘My name is ‘,self._class_._name_
def showver(self):
    """display class (static) attribute """
    print self.version  # references FooClass.version
def addMe2Me(self,x):
    """apply + operation to argument"""
    return x+x

在上面的这个类中,我们定义了一个静态变量version,它将被所有的实例及4个方法共享。这些show*()方法并没有做什么有用的事情,仅仅输出对应的信息。_init_()方法有一个特殊的名字,所有名字开始和结束都有两个下划线的方法是特殊的方法。

当一个类实例被创建时,_init_()方法会被自动执行,在类实力创建完毕后执行,类似构造器。_init_()可以被当成构造器,它并不创造实例--它仅仅是你的对象创建后执行的第一个方法。它的目的是执行一些该对象的必要的初始化工作,通过创建自己的_init_()方法。在这个实例中,我们初始化了一个名为name的类实例属性,这个变量仅在类实例中存在,它并不是实际类本身的一部分。_init_()需要一个默认的参数,毫无疑问你也注意到其中每个方法都有一个参数self。

什么是self?它是实例自身的引用。

如何创建类实例

# -*- coding: utf-8 -*-

__author__ = ‘xudongqi‘
class people:
    name = ‘‘
    age = 0
    __weight = 0
    #定义基本属性,私有属性外部无法直接访问。
   
    #定义构造方法
    def __init__(self,n,a,w):
        self.name = n
        self.age = a
        self.__weight = w
    def speak(self):
        print("%s is speaking: I am %d years old" %(self.name,self.age))


p = people(‘tom‘,10,30)
p.speak()


22.模块
模块是一种组织形式,它将彼此有关系的python代码组织到一个个独立文件当中。模块可执行代码,函数和类或者是这些东西的组合。
当你创建了一个python源文件,模块的名字就是不带.py后缀的文件名。一个模块创建之后,你可以从另一个模块中使用import语句导入这个模块来使用。

如何导入模块
import module_name

如何访问一个模块函数或访问一个模块变量
一旦导入完成,一个模块的属性(函数和变量)可以通过熟悉的句点属性标识法访问。
module.function()
module.variable

实用的函数:
dir([obj])
help([obj])
int([obj])
len([obj])
open(fn,mode)
range([start,]stop[,step])
raw_input(str)
str(obj)
type(obj)



python第一弹快速入门

标签:

原文地址:http://www.cnblogs.com/pythoncn/p/4280947.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!