本文实例讲述了Python简明入门教程。分享给大家供大家参考。具体如下:

一、基本概念

1、数

在Python中有4种类型的数――整数、长整数、浮点数和复数。

(1)2是一个整数的例子。

(2)长整数不过是大一些的整数。

(2)3.23和52.3E-4是浮点数的例子。E标记表示10的幂。在这里,52.3E-4表示52.3 * 10-4。

(4)(-5+4j)和(2.3-4.6j)是复数的例子。

2、字符串

(1)使用单引号(')

(2)使用双引号(")

(3)使用三引号('''或""")

利用三引号,你可以指示一个多行的字符串。你可以在三引号中自由的使用单引号和双引号。例如:

'''This is a multi-line string. This is the first line.

This is the second line.

"What's your name?," I asked.

He said "Bond, James Bond."

'''

(4)转义符

(5)自然字符串

自然字符串通过给字符串加上前缀r或R来指定。例如r"Newlines are indicated by "。

3、逻辑行与物理行

一个物理行中使用多于一个逻辑行,需要使用分号(;)来特别地标明这种用法。一个物理行只有一个逻辑行可不用分号

二、控制流

1、if

块中不用大括号,条件后用分号,对应elif和else

if guess == number:

print 'Congratulations, you guessed it.' # New block starts here

elif guess < number:

print 'No, it is a little higher than that' # Another block

else:

print 'No, it is a little lower than that'

2、while

用分号,可搭配else

while running:

guess = int(raw_input('Enter an integer : '))

if guess == number:

print 'Congratulations, you guessed it.'

running = False # this causes the while loop to stop

elif guess < number:

print 'No, it is a little higher than that'

else:

print 'No, it is a little lower than that'

else:

print 'The while loop is over.'

# Do anything else you want to do here

3、for

用分号,搭配else

for i in range(1, 5):

print i

else:

print 'The for loop is over'

4、break和continue

同C语言

三、函数

1、定义与调用

def sayHello():

print 'Hello World!' # block belonging to the function

sayHello() # call the function

2、函数形参

类C语言

def printMax(a, b):

if a > b:

print a, 'is maximum'

else:

print b, 'is maximum'

3、局部变量

加global可申明为全局变量

4、默认参数值

def say(message, times = 1):

print message * times

5、关键参数

如果某个函数有许多参数,而只想指定其中的一部分,那么可以通过命名来为这些参数赋值――这被称作 关键参数 ――使用名字(关键字)而不是位置来给函数指定实参。这样做有两个 优势 ――一,由于不必担心参数的顺序,使用函数变得更加简单了。二、假设其他参数都有默认值,可以只给我们想要的那些参数赋值。

def func(a, b=5, c=10):

print 'a is', a, 'and b is', b, 'and c is', c

func(3, 7)

func(25, c=24)

func(c=50, a=100)

6、return

四、模块

1、使用模块

import sys

print 'The command line arguments are:'

for i in sys.argv:

print i

如果想要直接输入argv变量到程序中(避免在每次使用它时打sys.),可以使用from sys import argv语句

2、dir()函数

可以使用内建的dir函数来列出模块定义的标识符。标识符有函数、类和变量。

五、数据结构

1、列表

shoplist = ['apple', 'mango', 'carrot', 'banana']

print 'I have', len(shoplist),'items to purchase.'

print 'These items are:', # Notice the comma at end of the line

for item in shoplist:

print item,

print ' I also have to buy rice.'

shoplist.append('rice')

print 'My shopping list is now', shoplist

print 'I will sort my list now'

shoplist.sort()

print 'Sorted shopping list is', shoplist

print 'The first item I will buy is', shoplist[0]

olditem = shoplist[0]

del shoplist[0]

print 'I bought the', olditem

print 'My shopping list is now', shoplist

2、元组

元组和列表十分类似,只不过元组和字符串一样是不可变的即你不能修改元组。

zoo = ('wolf', 'elephant', 'penguin')

print 'Number of animals in the zoo is', len(zoo)

new_zoo = ('monkey', 'dolphin', zoo)

print 'Number of animals in the new zoo is', len(new_zoo)

print 'All animals in new zoo are', new_zoo

print 'Animals brought from old zoo are', new_zoo[2]

print 'Last animal brought from old zoo is', new_zoo[2][2]

像一棵树

元组与打印

age = 22

name = 'Swaroop'

print '%s is %d years old' % (name, age)

print 'Why is %s playing with that python?' % name

3、字典

类似哈希

ab = { 'Swaroop' : 'swaroopch@byteofpython.info',

'Larry' : 'larry@wall.org',

'Matsumoto' : 'matz@ruby-lang.org',

'Spammer' : 'spammer@hotmail.com'

}

print "Swaroop's address is %s" % ab['Swaroop']

# Adding a key/value pair

ab['Guido'] = 'guido@python.org'

# Deleting a key/value pair

del ab['Spammer']

print ' There are %d contacts in the address-book ' % len(ab)

for name, address in ab.items():

print 'Contact %s at %s' % (name, address)

if 'Guido' in ab: # OR ab.has_key('Guido')

print " Guido's address is %s" % ab['Guido']

4、序列

列表、元组和字符串都是序列。序列的两个主要特点是索引操作符和切片操作符。

shoplist = ['apple', 'mango', 'carrot', 'banana']

# Indexing or 'Subscription' operation

print 'Item 0 is', shoplist[0]

print 'Item 1 is', shoplist[1]

print 'Item -1 is', shoplist[-1]

print 'Item -2 is', shoplist[-2]

# Slicing on a list

print 'Item 1 to 3 is', shoplist[1:3]

print 'Item 2 to end is', shoplist[2:]

print 'Item 1 to -1 is', shoplist[1:-1]

print 'Item start to end is', shoplist[:]

# Slicing on a string

name = 'swaroop'

print 'characters 1 to 3 is', name[1:3]

print 'characters 2 to end is', name[2:]

print 'characters 1 to -1 is', name[1:-1]

print 'characters start to end is', name[:]

5、参考

当你创建一个对象并给它赋一个变量的时候,这个变量仅仅参考那个对象,而不是表示这个对象本身!也就是说,变量名指向你计算机中存储那个对象的内存。这被称作名称到对象的绑定。

print 'Simple Assignment'

shoplist = ['apple', 'mango', 'carrot', 'banana']

mylist = shoplist # mylist is just another name pointing to the same object!

del shoplist[0]

print 'shoplist is', shoplist

print 'mylist is', mylist

# notice that both shoplist and mylist both print the same list without

# the 'apple' confirming that they point to the same object

print 'Copy by making a full slice'

mylist = shoplist[:] # make a copy by doing a full slice

del mylist[0] # remove first item

print 'shoplist is', shoplist

print 'mylist is', mylist

# notice that now the two lists are different

6、字符串

name = 'Swaroop' # This is a string object

if name.startswith('Swa'):

print 'Yes, the string starts with "Swa"'

if 'a' in name:

print 'Yes, it contains the string "a"'

if name.find('war') != -1:

print 'Yes, it contains the string "war"'

delimiter = '_*_'

mylist = ['Brazil', 'Russia', 'India', 'China']

print delimiter.join(mylist) //用delimiter来连接mylist的字符

六、面向对象的编程

1、self

Python中的self等价于C++中的self指针和Java、C#中的this参考

2、创建类

class Person:

pass # An empty block

p = Person()

print p

3、对象的方法

class Person:

def sayHi(self):

print 'Hello, how are you?'

p = Person()

p.sayHi()

4、初始化

class Person:

def __init__(self, name):

self.name = name

def sayHi(self):

print 'Hello, my name is', self.name

p = Person('Swaroop')

p.sayHi()

5、类与对象的方法

类的变量 由一个类的所有对象(实例)共享使用。只有一个类变量的拷贝,所以当某个对象对类的变量做了改动的时候,这个改动会反映到所有其他的实例上。

对象的变量 由类的每个对象/实例拥有。因此每个对象有自己对这个域的一份拷贝,即它们不是共享的,在同一个类的不同实例中,虽然对象的变量有相同的名称,但是是互不相关的。

class Person:

'''Represents a person.'''

population = 0

def __init__(self, name):

'''Initializes the person's data.'''

self.name = name

print '(Initializing %s)' % self.name

# When this person is created, he/she

# adds to the population

Person.population += 1

population属于Person类,因此是一个类的变量。name变量属于对象(它使用self赋值)因此是对象的变量。

6、继承

class SchoolMember:

'''Represents any school member.'''

def __init__(self, name, age):

self.name = name

class Teacher(SchoolMember):

'''Represents a teacher.'''

def __init__(self, name, age, salary):

SchoolMember.__init__(self, name, age)

self.salary = salary

七、输入输出

1、文件

f = file('poem.txt', 'w') # open for 'w'riting

f.write(poem) # write text to file

f.close() # close the file

f = file('poem.txt')

# if no mode is specified, 'r'ead mode is assumed by default

while True:

line = f.readline()

if len(line) == 0: # Zero length indicates EOF

break

print line,

# Notice comma to avoid automatic newline added by Python

f.close() # close the file

2、存储器

持久性

import cPickle as p

#import pickle as p

shoplistfile = 'shoplist.data'

# the name of the file where we will store the object

shoplist = ['apple', 'mango', 'carrot']

# Write to the file

f = file(shoplistfile, 'w')

p.dump(shoplist, f) # dump the object to a file

f.close()

del shoplist # remove the shoplist

# Read back from the storage

f = file(shoplistfile)

storedlist = p.load(f)

print storedlist

3、控制台输入

输入字符串 nID = raw_input("Input your id plz")

输入整数 nAge = int(raw_input("input your age plz: "))

输入浮点型 fWeight = float(raw_input("input your weight "))

输入16进制数据 nHex = int(raw_input('input hex value(like 0x20): '),16)

输入8进制数据 nOct = int(raw_input('input oct value(like 020): '),8)

八、异常

1、try..except

import sys

try:

s = raw_input('Enter something --> ')

except EOFError:

print ' Why did you do an EOF on me?'

sys.exit() # exit the program

except:

print ' Some error/exception occurred.'

# here, we are not exiting the program

print 'Done'

2、引发异常

使用raise语句引发异常。你还得指明错误/异常的名称和伴随异常 触发的 异常对象。你可以引发的错误或异常应该分别是一个Error或Exception类的直接或间接导出类。

class ShortInputException(Exception):

'''A user-defined exception class.'''

def __init__(self, length, atleast):

Exception.__init__(self)

self.length = length

self.atleast = atleast

raise ShortInputException(len(s), 3)

3、try..finnally

import time

try:

f = file('poem.txt')

while True: # our usual file-reading idiom

line = f.readline()

if len(line) == 0:

break

time.sleep(2)

print line,

finally:

f.close()

print 'Cleaning up...closed the file'

九、Python标准库

1、sys库

sys模块包含系统对应的功能。sys.argv列表,它包含命令行参数。

2、os库

os.name字符串指示你正在使用的平台。比如对于Windows,它是'nt',而对于Linux/Unix用户,它是'posix'。

os.getcwd()函数得到当前工作目录,即当前Python脚本工作的目录路径。

os.getenv()和os.putenv()函数分别用来读取和设置环境变量。

os.listdir()返回指定目录下的所有文件和目录名。

os.remove()函数用来删除一个文件。

os.system()函数用来运行shell命令。

os.linesep字符串给出当前平台使用的行终止符。例如,Windows使用' ',Linux使用' '而Mac使用' '。

os.path.split()函数返回一个路径的目录名和文件名。

>>> os.path.split('/home/swaroop/byte/code/poem.txt')

('/home/swaroop/byte/code', 'poem.txt')

os.path.isfile()和os.path.isdir()函数分别检验给出的路径是一个文件还是目录。类似地,os.path.existe()函数用来检验给出的路径是否真地存在。

希望本文所述对大家的Python程序设计有所帮助。

简明python教程-Python简明入门教程相关推荐

  1. 笔记本电脑下载python视频教程-Python的Jupyter Notebook入门教程

    适用于Python的Jupyter Notebook入门教程 在下面的教程中,将指导您完成安装Jupyter Notebook的过程.同时,我们将探索Jupyter Notebook的基本功能,通过尝 ...

  2. python图形用户界面pyside_PySide——Python图形化界面入门教程(一)

    标签: PySide--Python图形化界面入门教程(一) --基本部件和HelloWorld 原文链接:http://pythoncentral.io/intro-to-pysidepyqt-ba ...

  3. qpython3可视图形界面_PySide——Python图形化界面入门教程(三)

    PySide--Python图形化界面入门教程(三) --使用内建新号和槽 --Using Built-In Signals and Slots 上一个教程中,我们学习了如何创建和建立交互widget ...

  4. qpython3绘图_比Excel制图更强大,Python可视化工具Altair入门教程

    比 Excel 制图更强大,Python 可视化工具 Altair 入门教程 数据转化成更直观的图片,对于理解数据背后的真相很有帮助.如果你有这方面的需求,而且还在使用 Python,那么强烈推荐你试 ...

  5. Python+Opencv图像处理新手入门教程(四):视频内容的读取与导出

    一步一步来吧 上一节: Python+Opencv图像处理新手入门教程(三):阈值与二值化 1.Intro 今天这节我们主要看怎么利用opencv读取并处理视频中的内容. 2.VideoCapture ...

  6. Python+Opencv图像处理新手入门教程(三):阈值与二值化

    一步一步来吧 上一节: Python+Opencv图像处理新手入门教程(二):颜色空间转换,图像大小调整,灰度直方图 1.Intro 今天这节我们主要研究利用阈值处理图像.例如对于输入图像: 如何做一 ...

  7. Python+Opencv图像处理新手入门教程(二):颜色空间转换,图像大小调整,灰度直方图

    一步一步来吧 上一节:Python+Opencv图像处理新手入门教程(一):介绍,安装与起步 1.什么是图像 对于计算机而言,图像的本质是一个由像素点构成的矩阵. 例如我们用肉眼很容易分辨一辆汽车的后 ...

  8. Redis教程(一) Redis入门教程

    Redis教程(一) Redis入门教程 1 Redis入门教程 Redis是一个 Key-Value存储系统.和 Memcached类似,它支持存储的 value类型相对更多,包括 string(字 ...

  9. WMI 使用教程_.NET 入门教程

    WMI 使用教程_.NET 入门教程 先介绍一下WMI 相关知识:  什么是WMI 呢? Windows 管理规范 (Windows Management Instrumentation ),它的主要 ...

  10. Docker教程(一) Docker入门教程

    Docker教程(一) Docker入门教程 本文链接:https://blog.csdn.net/yuan_xw/article/details/51935278 Docker教程(一) Docke ...

最新文章

  1. java 将整型数组内容写入txt文件_Java自学-I/O 字节流
  2. 虚拟机复制后修改eth1为eth0
  3. 2019.03.21 增删改
  4. 一步一图一代码之排序二叉树
  5. jQuery对象和DOM对象
  6. Gateway网关-快速入门
  7. java aio复制文件_java复制文件的4种方式及拷贝文件到另一个目录下的实例代码...
  8. 服务器复制不了文档,服务器复制粘贴不了
  9. MongoDB增加用户认证: 增加用户、删除用户、修改用户密码、读写权限、只读权限
  10. android split工具,合并APKS为APK工具 Apktool M – AntiSplit on Android v2.4.0|张小北
  11. python编译软件排行榜_4 个快速的 Python 编译器 for 2018
  12. 在html标签中写css样式,html style样式标签元素教程
  13. 自动化专业考研方向简介
  14. flex:1是什么意思
  15. 欧洲杯赛场“中国元素”引观众热议;万达两家酒店在延安红街开业窑洞房最具特色 | 美通社头条...
  16. html laber上下居中,laber是什么意思
  17. 国外问卷调查这个项目可以做吗?
  18. Niagara N4 与物联网的学习经验分享(二 照明控制)
  19. linux 添加快捷命令,linux 添加快捷指令
  20. 智能合约在衍生品上的应用_5种衍生品在您的机器学习面试中表现出色

热门文章

  1. mysql 怎样链接jdbc_jdbc链接mysql
  2. newgrp - 登录到新的用户组中
  3. Google Zxing 生成二维码
  4. 任意给定一个正整数N,求一个最小的正整数M(M1),使得N*M的十进制表示形式里只含有1和0。...
  5. 用条件变量实现事件等待器的正确与错误做法
  6. 持续更新-Linux应用一句话
  7. Windows Workflow Foundation 培训资源
  8. UVA11351 Last Man Standing【约瑟夫环+数学】
  9. HDU1570 A C【水题】
  10. Python程序-生成回文