python通过两种方式来实现你的需求:语句和表达式

语句:使用关键字组成命令

>>>

print 'Hello wolrd!'

Hello wolrd!

表达式:可以是算术表达式或函数

>>>

abs(-4)

4

>>>

abs(4)

4

2.1、程序输出,print语句及”hello world”

>>>

mystring="hello world"

>>>

print mystring

hello world

>>>

mystring

#在交互式解释器里可直接输入变量名

'hello world'

注:print语句调用str()函数显示对象,交互式解释器调用repr()函数显示对象。

2.2、程序输入和raw_input()内建函数

>>>

_

#下划线在解释器中表示最后一个表达式的值

'hello world'

print语句与字符串格式运算符“%”结合使用,实现字符串替换功能:

>>>

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

python is number 1!

%s表示一个字符串来替换,%d表示一个整数替换,%f表示一个浮点数替换

Print语句支持将输出重定向文件,符号”>>”重定向:

>>>

import sys

>>>

print >> sys.stderr, 'Fatal

error:invalid input!'

Fatal error:invalid input!

[root@localhost tmp]# more

log.txt

11111

>>>

logfile=open('/tmp/log.txt','a')

#open打开文件,a表示add添加

>>>

print >> logfile,'fatal error:invalid

input!'

>>>

logfile.close()

[root@localhost tmp]# more

log.txt

11111

fatal error:invalid input!

内建函数:raw_input

获取用户数据输入,读取标准输入并赋值给指定变量

>>>

user=raw_input('Enter login name:')

Enter login name:root

>>>

print 'Your login is:',user

Your login is: root

使用int()内建函数可将用户输入的数值字符串转换为整数:

>>>

num=raw_input('Now enter a number:')

Now enter a number:2012

>>>

print 'Doubling your number:%d' % (int(num) * 2)

Doubling your number:4024

查看函数帮助信息:help()

>>>

help(raw_input)

Help on built-in function raw_input in module

__builtin__:

raw_input(...)

raw_input([prompt]) -> string

Read a string from standard input. The trailing newline

is stripped.

If the user hits EOF (Unix: Ctl-D, Windows: Ctl-Z+Return), raise

EOFError.

On Unix, GNU readline is used if enabled. The prompt string, if

given,

is printed without a trailing newline before

reading.

(END)

2.3、注释

和shell一样,用”#”标示注释

>>>

#one comment

... print 'Hello World!'

Hello World!

DocStrings:文档字符串的惯例是一个多行字符串,它的首行以大写字母开始,句号结尾。第二行是空行,从第三行开始是详细的描述。适用于函数、模块、类。

>>>

def foo():

...

"this is a doc string." #此行为文档子字符串,这里没有按照惯例

...

return True

...

>>>

foo()

True

>>> print

foo.__doc__

#打印函数foo的__doc__属性

this is a doc string.

>>>

help(foo)

#也可以使用help打印,输入help()也会显示自身__doc__属性

Help on function foo in module

__main__:

foo()

this is a doc

string.

2.4、运算符

算术运算符:+ - * /

//(浮点除法,四舍五入) %(取余)

**(乘方)

>>>

print -2*4+3**2

1

优先级:**最高,*、/、

//、%、+、-

比较运算符:<

<=

>

>= == !=

<>(不等于,python3取消了)

比较运算符结果返回布尔值:True,False

>>>

2<4

True

>>>

2==4

False

>>>

2>4

False

>>>

6.2<=6

False

>>>

6.2<=6.2

True

>>>

6.2<=6.201

True

逻辑运算符:and、or、not

>>>

2<4 and 2==4

False

>>>

2<4 or 2==4

True

>>>

not 6.2 <=6

True

>>>

3<4<5

True

>>>

3<4 and 4<5

True

2.5、变量和赋值

变量名由字母、数字、下划线组成,大小写敏感;

变量赋值通过等号”=”执行;

>>>

counter=0

#整数赋值

>>>

miles=1000.0

#浮点赋值

>>>

name='Bob'

#字符串赋值

>>>

counter=counter+1 #整数加1

>>>

kilometers=1.609*miles

#浮点数乘法赋值

>>>

print '%f miles is the same as %f km' %

(miles,kilometers)

1000.000000 miles is the same as 1609.000000

km

>>>

n=1

>>>

n=n*10

>>>

print n

10

>>>

>>>

n*=10

#增量赋值,运算符和等号合并

>>>

print n

100

注:Python不支持c语言的自增、自减运算符,+/-也是单目运算符,--n会解释为-(-n)等于n,++n同上结果为n;

2.6、数字

Python支持5种基本数字类型,三种为整数类型:

Int(有符号整数)

long(长整数)

#在python3中取消了long型

bool(布尔值)

float(浮点值)

complex(复数)

decimal:十进制数浮点型,非内建类型,需导入模板才可使用

>>>

1.1

1.1000000000000001

>>>

import decimal

>>>

print decimal.Decimal('1.1')

1.1

2.7、字符串

字符串定义为引号之间的字符合集,支持成对的单引号,双引号,三引号(三个连续的单/双引号)。

使用索引运算符”[

]”、切片运算符”[ : ]”取得子字符串。字符串索引规则:第一个字符索引是0,最后一个字符串索引是-1。

加号”+”用于字符串连接运算,星号”*”用于字符串重复。

>>>

pystr='python'

>>>

iscool='is cool!'

>>>

pystr[0]

#取第一个字符

'p'

>>>

pystr[2:5]

#取第三个到第五个字符

'tho'

>>>

iscool[:2]

#1到2字符

'is'

>>> iscool[3:]

#第四个到最后

'cool!'

>>>

iscool[-1]

#最后一个字符

'!'

>>>

pystr+iscool

#连接两个变量字符串

'pythonis cool!'

# pythonis没有空格

>>> pystr+'

'+iscool

#添加一个空格

'python is cool!'

>>>

pystr*2

#字符串乘2等于2倍字符串

'pythonpython'

>>>

'-'*20

#20个横杠字符

'--------------------'

>>>

pystr='''python

#三引号实例

... is cool'''

>>>

pystr

'pythonnis cool'

#变量直接输出会显示n换行符

>>> print

pystr

#print打印多行

python

is cool

2.8、列表和元组

可看成数组,能保存任意数量任意类型的python对象,索引也是从0开始。

列表和元组的区别:

列表元素用中括号”[

]”包裹,元素个数及值可以改变;

元组元素用小括号”(

)”包裹,元素不可以更改,可看成只读列表;

都使用索引运算符”[

]”、切片运算符”[ : ]”取得子集;

列表实例:

>>>

list=[1,2,3,4]

>>>

list

[1, 2, 3, 4]

>>>

list[0]

1

>>>

list[2:]

[3, 4]

>>>

list[:3]

[1, 2, 3]

>>>

list[1]=6

>>>

list

[1, 6, 3, 4]

元组实例:

>>>

tuple=('robots',77,88,'try')

>>>

tuple

('robots', 77, 88, 'try')

>>>

tuple[:2]

('robots', 77)

>>>

tuple[1]=3

#元组赋值报错

Traceback (most recent call

last):

File

"", line 1, in

?

TypeError: object does not support item

assignment

2.9、字典

字典是python中的映射数据类型,由键-值(key-value)对构成。几乎所有类型的python对象都可用作键值,数字和字符串最常用。

字典元素用大括号”{

}”包裹。

>>>

dict={'host':'earth'}

>>>

dict['port']=80

>>>

dict

{'host': 'earth', 'port': 80}

>>>

dict.keys()

['host', 'port']

>>>

dict['host']

'earth'

>>>

for key in dict:

...

print key,dict[key]

...

host earth

port 80

2.10、代码块及缩进对齐

python语言是通过缩进对齐表达代码逻辑,不使用大括号,缩进方式可选择tab或空格,这种方式的好处不言而喻,一是简洁美观,二可读性好。

2.11、if语句

if

expression:

#表达式值为非0或布尔值True,则执行代码组if_suite,否则执行下一条

if_suite

>>>

x=3

>>>

if x<5:

...

print 'x is %d' % (x)

...

x is 3

if语句支持else、elif于语句:

if

expression1:

if_suite

elif expression2:

elif_suite

else:

else_suite

2.12、while循环,类似if语法

while

expression:

while_suite

>>>

counter=0

>>>

while counter<3:

...

print 'loop #%d' % (counter)

...

counter+=1

...

loop #0

loop #1

loop #2

2.13、for循环和range()内建函数

>>>

for item in

['e-mail','net-surfing','homework','chat']:

...

print item,

...

print

...

e-mail

net-surfing

homework

chat

print语句通过加入逗号实现添加空格:

>>>

who='knights'

>>>

what='Ni!'

>>>

print 'We are the',who,'who say',what,what,what

We are the knights who say Ni! Ni!

Ni!

>>> print 'We

are the %s who say %s' %

#””换行

... (who,((what+' ')*4))

We are the knights who say Ni! Ni! Ni!

Ni!

>>> for

eachnum in range(3):

#range内建函数

...

print eachnum

...

0

1

2

字符串迭代:

>>>

foo='abc'

>>>

for c in foo:

...

print c

...

a

b

c

range()和len()函数用于字符串索引:

>>>

foo='abc'

>>>

for i in range(len(foo)):

...

print foo[i],'(%d)' % i

...

a (0)

b (1)

c (2)

enumerate()函数同时循环索引和元素:

>>>

for i,ch in enumerate(foo):

...

print ch,'(%d)' % i

...

a (0)

b (1)

c (2)

2.14、列表解析

可以在一行中使用一个for循环将所有值放到一个列表当中:

>>>

squared=[x ** 2 for x in range(4)]

>>>

for i in squared:

...

print i

...

0

1

4

9

2.15、文件和内建函数open()、file()

hand=open(file_name,

access_mode=’r’)

file_name变量为打开文件的字符串名字

access_mode中”r”表读取,”w” 表写入,“a”表添加,”+”表读写,”b”表二进制访问,默认为”r”

如果open()成功,一个文件对象句柄会被返回,所有后续的文件操作都必须通过此文件句柄进行。当一个对象返回后,就可以访问它的一些方法,如readlines(),close() . 文件对象的方法属性也必须通过句点属性标识法访问。

属性是与数据有关的项目,属性可以是简单的数据值,也可以是执行对象,如函数和方法。类、模块、文件、复数等对象都拥有属性。通过使用句点属性标识法来访问对象属性:object.attribute

2.16、错误和异常

python程序在运行时可通过try-except语句检测错误,检测到错误后,解释器引发一个异常并显示信息。try后位代码组,except后为处理错误的代码。

>>>

filename=''

>>>

while 1:

...

filename=raw_input("Input a file name:")

...

if filename=='q':

...

break

...

try:

...

f=open(filename,"r")

...

print

'opend a file.'

...

except:

...

print 'There is no file named',filename

...

Input a file name:logfile

There is no file named logfile

Input a file name:

There is no file named

Input a file name:/tmp/log.txt

opend a file.

Input a file name:q

2.17、函数

语法:

def function_name([argument])

#argument参数可选

“optional documentation string”

function_suit

>>>

def addme2me(x):

...

'apply+operation to argument'

...

return (x+x)

#加号运算符支持几乎所有的标准数据类型

...

>>>

addme2me(3)

6

>>>

addme2me(4.5)

9.0

>>>

addme2me('python')

'pythonpython'

>>>

>>>

>>>

addme2me([-1,'abc'])

[-1, 'abc', -1, 'abc']

函数参数可以设置默认值,如果调用时没有提供参数,则取默认值:

>>>

def foo(debug=True):

...

if debug:

...

print 'in debug mode'

...

print 'done'

...

>>>

foo()

in debug mode

done

>>>

foo(False)

2.18、类

>>>

class fooclass(object):

...

version=0.1

...

def __int__(self,nm='John Doe'):

...

self.name=nm

...

print 'create a class instance for',nm

...

def showname(self):

...

print

'Your name is',self.name

...

print 'My name is',self.__class__.__name__

...

def showver(self):

...

print self.version

...

def addme2me(self,x):

...

return x+x

...

>>>

>>>

fool=fooclass()

create a class instance for John

Doe

>>>

fool.showver()

0.1

>>>

print fool.addme2me(5)

10

>>>

print fool.addme2me('xyz')

xyzxyz

2.19、模块

导入模块:import

module_name

系统自带很多模块,自己编写的.py结尾的程序也是一个模块,模块名不带后缀,调用模块函数或模块变量通过句点”.”访问。

>>>

import sys

>>>

sys.stdout.write('Hello World!n')

Hello World!

>>>

sys.platform

'linux2'

>>>

sys.version

'2.4.3 (#1, Mar 5 2011, 21:25:56)

n[GCC 4.1.2 20080704 (Red Hat 4.1.2-50)]'

test.py

import.test

2.20、实用的内建函数

dir([obj]) 显示对象的属性,

如果没有提供参数,

则显示全局变量的名字;

help([obj]) 显示对象的文档字符串,

如果没有参数,

进入交互式帮助;

int(obj) 将一个对象转换为整数;

len(obj) 返回对象的长度;

open(fn, mode) 以mode("r’=读,’w’=写,a)方式打开一个文件名为fn的文件;

range([[start,]stop[,step]]) 返回一个整数列表。起始值为start,结束值是stop-1,start默认值为0,step默认是1;

raw_input(str) 等待用户输入一个字符串,可以提供一个可选的str用作提示信息;

str(obj) 将一个对象转换为字符串;

type(obj) 返回对象的类型(返回值本身是一个type对象);

python起步输入-[转载]python核心编程学习笔记-python起步相关推荐

  1. 【C++】黑马程序员-C++核心编程学习笔记

    前言 根据黑马程序员C++课程内容,结合讲义,将自己学习C++的过程中将自己觉得有必要记下的笔记进行整理,方便复习回顾,编程环境为VSCode. 本阶段主要针对C++面向对象编程技术做详细讲解,探讨C ...

  2. 转 windows核心编程 学习笔记 目录

    windows核心编程--SEH(结构异常处理) SEH 的工作原理.         Windows 程序设计中最重要的理念就是消息传递,事件驱动.当GUI应用程序触发一个消息时,系统将把该消息放入 ...

  3. Python核心编程学习笔记(一)

    1.把一个字符串赋值给变量str.先用print来显示变量的内容,然后用变量名称来显示: >>>str = 'Hello World!' >>>print str ...

  4. Python核心编程学习笔记-2016-07-24-01-理解copy和deepcopy

    6.20节 copy实施方式: (1)完全切片操作[:] (2)工厂函数list(),tuple()等 (3)copy模块的copy函数 copy可以说是创建了了一个新的对象,但是内容仍然是原对象的引 ...

  5. 《Python核心编程》笔记 Python对象

    1.Python对象 Python使用对象模型来存储数据,构造任何类型的值都是一个对象.所有的对象都有三个特性: 身份,可通过内建函数id()查看,这个值即该对象的内存地址. 类型,可通过内建函数ty ...

  6. 《Python核心编程》笔记 Python对象

    第4章 Python对象 1.Python对象 Python使用对象模型来存储数据,构造任何类型的值都是一个对象.所有的对象都有三个特性: 身份,可通过内建函数id()查看,这个值即该对象的内存地址. ...

  7. windows核心编程学习笔记(六)动态链接库

    动态链接库有很多优点: •扩展了应用程序的特性 •可以用许多种编程语言来编写 •简化了软件项目的管理 •有助于节省内存 •有助于资源的共享 •有助于应用程序的本地化 •有助于解决平台差异 •可以用于一 ...

  8. ASP.NET 3.5核心编程学习笔记(18):数据绑定表达式

    简单数据绑定 数据绑定表达式是由<%...%>包裹的可执行代码,以#号为前缀.它可以通过DataBoundLiteralControl类的实例以编程方式加以管理. 数据绑定表达式通常从数据 ...

  9. ASP.NET 3.5核心编程学习笔记(55):自定义扩展程序控件的创建

    ASP.NET并没有包含对扩展程序的具体实现.然而,它定义了供所有自定义扩展程序和ACT中所有扩展程序使用的基类ExtenderControl.我们可通过该类创建自己的扩展程序.但并不建议这样做,因为 ...

最新文章

  1. SWT事件的四种写法
  2. Linux内核之内核同步(二)——原子操作
  3. Spring中的后置处理器BeanPostProcessor讲解
  4. Centos5 install vnc
  5. 计算机PPT03,南京大学计算机网络课件03.ppt
  6. 电钻有刷好还是无刷好_高中物理好的来看看,永磁同步直流电机是怎样实现无刷驱动的?...
  7. linux进程理解,进程资源 - 进程基础 - [ 理解Linux进程 ] - 手册网
  8. 计算机无法播放asf格式,ASF文件怎么打开播放出来?
  9. java jtextarea 显示_Java开发网
  10. 威盾VIACONTROL远程监控注册机及试用手记
  11. Solr优化案例分析
  12. 关于excel文件损坏的处理方法
  13. Photoshop CC(2018)安装教程
  14. BMVC2020 Best Paper: Delving Deeper into Anti-aliasing in ConvNets论文解读
  15. apiCloud + aui实现tab栏切换功能
  16. 浙江万里学院期末计算机网络,(浙江万里学院云计算基础课程大作业封面.doc
  17. UAP安装使用FindBugs
  18. 机器学习中的优化算法介绍
  19. c语言对孩子的作用,爸爸用C语言给孩子早教,孩子逐渐崩溃,网友:你别害孩子秃顶...
  20. linux 通过lvm合并磁盘

热门文章

  1. Python 调试:step into/step out/step over 的区别
  2. SOC(网络安全管理平台)
  3. 学生信息管理系统(连接数据库,面向对象的方法实现学生信息的增删改查操作)...
  4. CSS3颜色渐变模式
  5. Swift - 闭包的介绍及用法(以数组排序为例)
  6. Centos版Linux 一些常用操作命令
  7. 图画hadoop -- 生态圈
  8. 记录下openstack部署和使用时遇到的一些问题
  9. python培训中心-吴中区Python培训中心
  10. python中turtle画酷炫图案-用python打造可视化爬虫监控系统,酷炫的图形化界面