`
elan1986
  • 浏览: 168121 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

python快速入门一

阅读更多
1)	字符串:
字符串有其特有的索引规则:第一个字符的索引是 0,最后一个字符的索引是 -1
>>> prstr = 'Python'
>>> pystr[0]
Traceback (most recent call last):
  File "<pyshell#15>", line 1, in <module>
    pystr[0]
NameError: name 'pystr' is not defined
>>> pystr[0]
Traceback (most recent call last):
  File "<pyshell#16>", line 1, in <module>
    pystr[0]
NameError: name 'pystr' is not defined
>>> pystr = "abcde"
>>> pystr[0]
'a'
>>> pystr='Python'
>>> pystr[0]
'P'
>>> pystr[2:5]
'tho'
>>> pystr[:2]
'Py'
>>> pystr[2:]
'thon'
>>> pystr[-1]
'n'
>>> pystr * 2
'PythonPython'
>>> '-' * 2
'--'
>>> pystr[-1:15]
'n'
>>> pystr[-1:15]
'n'
>>> pystr[-1:-3]
''
>>> pystr[-6:-1]
'Pytho'
>>> pystr[-6:]
'Python'
>>> pystr[-6:0]
''
>>> pystr[-6:-2]
'Pyth'
2)	列表和元组
列表和元组有几处重要区别,列表元素用中括号([])包裹,元素的个数及元素的值可以改变,元组元素用小括号(())包裹,不可以更改,尽管它们的内容可以改变,元组可以看成是只读的列表。通过切片运算([] 和[:])可以得到子集。
>>> aList= [1, 2, 3, 4]
>>> aList
[1, 2, 3, 4]
>>> aList[0]
1
>>> aList[2:]
[3, 4]
>>> aList[:3]
[1, 2, 3]
>>> aList[1]
2
>>> atuple = ('robots', 77, 92, 'try')
>>> atuple
('robots', 77, 92, 'try')
>>> atuple[3]
'try'
>>> atuple[:3]
('robots', 77, 92)
>>> atuple[1] = 55
Traceback (most recent call last):
  File "<pyshell#44>", line 1, in <module>
    atuple[1] = 55
TypeError: 'tuple' object does not support item assignment
3)	字典
字典是Python中的映射数据类型,工作原理类似Perl中的关联数组或者哈希表,有键-值(key-value)组成,几乎所有类型的Python对象都可以用作键。值可以是任意类型的python对象,字典元素用大括号({})包裹。
>>> adict = {'host' : 'earth'}
>>> adict['port'] = 80
>>> adict
{'host': 'earth', 'port': 80}
>>> adict.keys()
dict_keys(['host', 'port'])
>>> dir(adict)
['__class__', '__contains__', '__delattr__', '__delitem__', '__doc__', '__eq__', '__format__', '__ge__', '__getattribute__', '__getitem__', '__gt__', '__hash__', '__init__', '__iter__', '__le__', '__len__', '__lt__', '__ne__', '__new__', '__reduce__', '__reduce_ex__', '__repr__', '__setattr__', '__setitem__', '__sizeof__', '__str__', '__subclasshook__', 'clear', 'copy', 'fromkeys', 'get', 'items', 'keys', 'pop', 'popitem', 'setdefault', 'update', 'values']
>>> adict.values
<built-in method values of dict object at 0x014C7270>
>>> adict.values()
dict_values(['earth', 80])
>>> adict.pop()
Traceback (most recent call last):
  File "<pyshell#52>", line 1, in <module>
    adict.pop()
TypeError: pop expected at least 1 arguments, got 0
>>> adict['host']
'earth'
>>> for key in adict:
	print key , adict[key]
	
SyntaxError: invalid syntax
>>> for key in adict :
	print(key , adict[key])

	
host earth
port 80
4)	if …elif…else
1.	print在3.0版本后改变为print()
2.	raw_input在3.0版本后改变为input()
3.	python一直让我不解的一个问题,代码块,现在看来没有什么好担心的了,因为它的缩进做到很好。约定有点时候带来的效率更高。不得不喜欢python简洁的语法。
>>> if 3<0:
	print ' ok !'
	
SyntaxError: invalid syntax
>>> if 3 < 0
SyntaxError: invalid syntax
>>> if 3<0:
	print('ok----0')
	print('ok----1')
	elif 3>0:
		
SyntaxError: invalid syntax
>>> if 3<0:
	print('ok----0')
	print('ok----1')
    elif 3>0:
	    
SyntaxError: unindent does not match any outer indentation level
>>> if 3<0:
	print('ok----0')
	print('ok----1')

	
>>> if 3>0:
	print('ok----0')
	print('ok----1')

	
ok----0
ok----1
>>> if 3<0:
	print('ok----0')
	print('ok----1')
	else print(111)
	
SyntaxError: invalid syntax
>>> if 3<0:
	print('ok----0')
	print('ok----1')
else print(111)
SyntaxError: invalid syntax
>>> a = input("a:")
b = input("b:")
if(a > b):
    print a, " > ", b
else:
print a, " < ", b
a:1
>>> a = input("a:")
b = input("b:")
if(a > b):
    print a, " > ", b
else:
print a, " < ", b
a:333 
>>> a = input("a:")
a:1
>>> b = input("b:")
b:3
>>> if(a > b):
    print a, " > ", b
else:
print a, " < ", b
SyntaxError: invalid syntax
>>> if(a > b):
    print (a, " > ", b)
else:
print (a, " < ", b)
SyntaxError: expected an indented block
>>> if(a > b):
    print (a, " > ", b)
else:
    print (a, " < ", b)

    
1  <  3
>>> if(a < b):
	print(a, " < " b)
	
SyntaxError: invalid syntax
>>> if(a < b )
SyntaxError: invalid syntax
>>> if(a < b ):
	print(a, " < ", b)
else:
	print(a, "> ", b)

	
1  <  3
5)	While
While和if没什么区别,只是需要注意:要使用缩进来分隔每个子代码块
>>> counter = 0
>>> while counter < 3:
	print('loop #%d' % (counter))
	counter += 1

	
loop #0
loop #1
loop #2
6)	For
>>> import sys
>>> for num in ['1','2','3','4']:
	sys.stdout.write(num)
1234
>>> foo = 'abc'
>>> for i in range(len(foo)):
	print(foo[i], '%d' % i)

	
a 0
b 1
c 2
>>> for i , ch in enumerate(foo):
	print( ch, '%d' % i)

	
a 0
b 1
c 2
7)	列表解析
>>> squared = [x ** 2 for x in range(4)]
>>> for i in squared:
	print(i)

	
0
1
4
9
>>> sqdEvens = [x ** 2 for x in range(8) if not x % 2]
>>> for i in sqdEvens
SyntaxError: invalid syntax
>>> for i in sqdEvens:
	print i
	
SyntaxError: invalid syntax
>>> for i in sqdEvens:
	print(i)

	
0
4
16
36
8)	文件
>>> fobj = open('C:\GHOSTERR.TXT','r')
>>> for eachLine in fobj:
	print(eachLine)

	
*********************************

Date   : Tue Oct 21 16:26:47 2008

Error Number: (440)

Message: Ghost cannot run on Windows based systems.

Please boot your system into Dos and then run Ghost or

alternatively, run Ghost32 (Ghost for Windows).

Version: 11.0.0.1502 (Dec  4 2006, Build=1502)

OS Version: DOS v5.50

Command line arguments:

Active Switches :

       AutoName

PathName            : 

DumpFile            : 

DumpPos             : 0

FlagImplode         : 0

FlagExplode         : 0



Operation Details :

  Total size.........0

  MB copied..........0

  MB remaining.......0

  Percent complete...0%

  Speed..............0 MB/min

  Time elapsed.......0:00   

  Time remaining.....0:00   



Program Call Stack

AbortLog

Generic_Abort

main



Call Stack

  0x0039623c

  0x0009cbd1

  0x0009c40c

  0x0009bae7

  0x0009d6ee

  0x00003cad

  0x0039f468

End Call Stack





Start heap available: 0

Cur   heap available: 15728640

Total Memory:         1064480768



Allocated

   1024 DpmiDjgpp.cpp:56

Free



Fat details:



NTFS details:

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



NTFS Global Flags:

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

	 contiguousWrite=0 forceDiskClusterMapping=0 

	 inhibitCHKDSK=0 ignoreBadLog=0 ignoreCHKDSKBit=0

	 enable_cache=0 xfrbuflen=0 

	 last_attr_type = 0 

	 loadExact = 0 

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

>>> fobj.close()
9)	类
self , 它是类实例自身的引用
当一个实例被创建,__init__()就会被自动调用。不管这个__int__()是自定义的还是默认的。

>>> class FooClass(object):
	"""my very first class : FooClass"""
	version = 0.1
	def __init__(self, nm='john doe'):
		"""constructor"""
		self.name = nm
		print('----- ' ,nm)
	def showname(self):
		"""display instance attribute and class name"""
		print('your name is ', self.name)

		
>>> fool = FooClass()
-----  john doe
>>> fool.show
Traceback (most recent call last):
  File "<pyshell#12>", line 1, in <module>
    fool.show
AttributeError: 'FooClass' object has no attribute 'show'
>>> fool.showname()
your name is  john doe
>>> foo2 = FooClass('test')
-----  test
>>> foo2.showname()
your name is  test
10)	模块
当你创建了一个 Python 源文件,模块的名字就是不带 .py 后缀的文件名。一个模块创建之后, 你可以从另一个模块中使用 import 语句导入这个模块来使用。
>>> import sys
>>> sys.stdout
<idlelib.rpc.RPCProxy object at 0x013F59D0>
>>> sys.stdout.write('hello world')
hello world
>>> sys.platform
'win32'
>>> sys.version
'3.1.2 (r312:79149, Mar 21 2010, 00:41:52) [MSC v.1500 32 bit (Intel)]'

二
1)	“多元”赋值
>>> x,y,z = 1,2,'a.string'
>>> x
1
>>> y
2
>>> z
'a.string'
>>> x = 2
>>> x
2
>>> (x,y,z)=(1,2,3)
>>> x
1
>>> y
2
>>> z
3
>>> x=1
>>> x=3
>>> (x,y,z)
(3, 2, 3)
>>> a=(1,2,3)
>>> a[0]
1
>>> a[0]=1
Traceback (most recent call last):
  File "<pyshell#22>", line 1, in <module>
    a[0]=1
TypeError: 'tuple' object does not support item assignment
>>>
无需中间变量,就可以交换值
>>> x,y = 1,2
>>> x,y = y, x
>>> x
2
>>> y
1
>>> x,y
(2, 1)
>>>
分享到:
评论

相关推荐

    Python快速入门

    总的来说,作为中小学教师,尤其是信息技术教师,通过学习Python快速入门知识,能够有效地帮助学生掌握编程技能,满足新课标的要求,并为学生提供一个坚实的技术基础。教师不仅需要掌握Python的基础和高级知识,还要...

    python快速编程入门(第2版)课后答案.pdf

    在《Python快速编程入门(第2版)》中,课程涵盖了Python的基础知识,包括对象、可移植性以及Python的导入机制。对象是Python编程的基本单元,可以是变量、函数、类等。可移植性则是指Python代码可以在多种操作系统...

    Python快速入门魔力手册

    《Python快速入门魔力手册》是一本面向有一定编程基础的学习者设计的教程,旨在帮助读者迅速掌握Python语言的基础知识和核心概念。Python作为一门高级编程语言,以其简洁、易读的语法特性,广泛应用于数据分析、Web...

    Python快速编程入门的课后习题答案(本人原创,通过测试完整准确)

    "Python快速编程入门的课后习题答案" Python 是一种高级的、解释性的编程语言,具有简单易学、开源、高级语言、可移植性、解释性、面向对象、可扩展性、丰富的库、规范的代码等特点。 Python 可以应用在 web 应用...

    54752Python快速编程入门(第2版)_PPT.zip

    《54752Python快速编程入门(第2版)》是一本专为初学者设计的Python编程教程,旨在帮助读者迅速掌握Python编程基础。PPT格式的文件提供了清晰、直观的学习材料,使得学习过程更加高效。以下是这个教程中可能包含的...

    Python快速编程入门(第2版)-实训案例文档.zip

    Python快速编程入门(第2版)-实训案例文档.zip

    python快速入门教程chm

    "Python快速入门教程CHM"是一本专为初学者设计的指南,旨在帮助读者迅速掌握Python编程的基础概念和技能。 首先,Python的基础知识包括变量、数据类型和操作符。变量在Python中用于存储数据,你可以随时改变它们的...

    Python快速编程入门教程.pdf

    学习目标: 1、了解python发展历程、特点、应用领域; 2、掌握python的执行原理; 3、掌握pycharm简单编写python程序; 4、了解python开发环境配置;

    Python快速入门魔力手册.pdf

    不过,根据文件的标题和描述,我们可以推测这本《Python快速入门魔力手册.pdf》可能是围绕Python编程语言的基础入门指南。 基于对Python编程语言和编程入门的普遍理解,以下是一些可能包含在《Python快速入门魔力...

    Python快速编程入门(第2版)PPT完整全套教学课件.xdf

    Python快速编程入门(第2版)PPT完整全套教学课件.xdf

    Python编程入门经典

    作为一门面向对象的开源编程语言,python易于理解和扩展,并且使用起来非常方便。《python编程入门经典》... ◆解释如何扩展python, ◆分享数值编程技术, ◆介绍jython的内部机理,jython是一个用java编写的python版本

    Python 快速入门

    ### Python 快速入门知识点详解 #### 一、Python简介 **Python** 是一种高级、通用、解释型的编程语言,以其简洁清晰的语法而著称。它支持多种编程范式,包括面向对象、命令式、函数式以及过程式编程。 - **跨...

    python 快速入门

    【Python 快速入门】 Python 是一种高级编程语言,以其简洁明了的语法和强大的功能深受初学者和专业开发者的喜爱。这篇入门指南将帮助初学者快速了解如何开始学习Python。 首先,要开始学习Python,你需要确保有一...

    Python快速编程入门.zip

    "Python快速编程入门"这个资源旨在为初学者提供一条快速掌握Python编程的路径。通过"Python 黑魔法指南",你可以深入理解Python的内在机制,并通过教程、问题解答和课后练习来巩固你的学习。 在Python教程部分,你...

    Python编程入门与算法进阶.pptx

    Python编程入门与算法进阶是一本全面介绍Python编程语言和算法的书籍。本书分为两个部分,第一部分是Python编程入门,第二部分是算法进阶。 在Python编程入门部分,本书详细讲解了Python编程的基础知识,包括变量、...

    python基础入门教程 基础进阶教程 共155页.pdf

    Python 是一种高级的、interpreted 编程语言,支持面向对象、体面可扩展的语法和语义。Python语言具有简洁、易读、易学、易用的特点,广泛应用于Web开发、人工智能、数据分析、自动化运维等领域。 本教程涵盖了...

    python快速入门.ppt

    Python快速入门 Python是一门具有强类型、动态性、隐式类型、大小写敏感、面向对象等特点的编程语言。 Python快速入门教程主要讲解了Python的基础知识,包括Python是什么、Python和C++的区别、Python基础语法、...

    Python快速入门魔力手册.

    Python快速入门魔力手册

    3-python快速入门

    根据给定的信息,本文将对Python快速入门的相关知识点进行详细阐述。尽管提供的部分内容包含大量非中文字符,我们依然可以从标题、描述以及部分可识别的文字中提取出关于Python的基础概念与学习指南。 ### Python...

Global site tag (gtag.js) - Google Analytics