2015/8/10 Python基本使用(1)

此文为《Python核心编程》的读书笔记记录。



Python是一门解释性语言,所有的语句用解释器(interpreter)来直接解释,但它同时是High Level的语言,这样的组成能够在编写代码时得到直接与机器交互的体验。非常棒

 >>> print "Hello World!"

在解释器上直接输入,屏幕上直接就会显示Hello World!. >>>符号是提示符,是解释器提示输入等待标志。输入两种东西是可以得到回应的,一个是语句一个是表达式。语句是用关键词组成命令,比如说Print "Hello World!"。而表达式是没有关键字的,比如说一个函数或者一个数学式子。

Python的print语句和C语言一样可以和字符串操作符(%)一起使用,实现字符串替代功能。如:

 >>> print "%s is number %d!" % ("Programming",1)
 Progamming is number 1!

这里的%是一个字符替换,后面的字母代表替换格式。常用的是%s %d %f。C语言的printf()语句表达上述写法是
printf("%s is number %d","Programming",1);
有略微的语法差别。

>>> num = int(raw_input("Please input an integer: "))

raw_input是一个文本输入函数,用于从标准输入读取一个字符串然后删除串尾的换行符。输入的内容会存储成字符串类型,然后使用int()将内容转换成整型

注释

>>> # one comment
... print ‘Hello World!‘ # another comment

Python使用#作为单行注释符。#后的内容作为注释
另外Python有文档字符串的特别注释,在模块、类或者函数起始添加一个字符串,该字符串是在线文档的作用,如:

>>> def foo():
"This is a doc string"
retrun True

"This is a doc string"这一句等同注释。不过与普通注释不同,文档字符串可以在运行时,可以用来自动生成文档(?)

+ - * / // % **
加 减 乘 除 取余 幂
其中//是浮点除法(对结果进行四舍五入)

关于变量,Python作为动态类型语言,不用预先申明变量类型,变量的类型和值在赋值那一刻被初始化。赋值号是 =
Python里不支持C中的自增和自减。对n的自增1和自减1写成

n += 1
n -= 1

关于类型,Python有五种基本数字类型,有符号整型,长整型,布尔型,浮点型和复数型
Python的长整型和C的长整型不同,长整型的大小取决于用户虚拟内存总数,类似于Java的BigInteger。复数类型适合进行科学运算

字符串,支持使用成对的单引号或双引号,三引号用以包含特殊字符。索引操作符[]和切片操作符[:]可以得到子字符串。字符串索引中,第一个索引是0,最后一个是-1.
+可以用于字符串的连接,*可以用于字符串的重复

列表和元组,这是Python有的数据组织结构,可以看成普通的“数组”。保存任意数量和任意类型的Python对象。也是从0开始索引元素。但是列表和元组都可以存储不同类型的对象。
列表元素用中括号[]包裹,元素的个数和值都可以改变。元组元素用小括号()包裹,不可以更改(但他们的内容可以更改)。元组可以看成只读的列表,通过切片运算([]和[:])可以得到子集。
列表:

>>> aList = [1, 2, 3, 4]
>>> aList
[1, 2, 3, 4]
>>> aList[0]
1
>>> aList[2:]
[3, 4]
>>> aList[:3]
[1, 2, 3]
>>> aList[1] = 5
>>> aList
[1, 5, 3, 4]

元组:

>>> aTuple = (‘robots‘, 77, 93, ‘try‘)
>>> aTuple
(‘robots‘, 77, 93, ‘try‘)
>>> aTuple[:3]
(‘robots‘, 77, 93)
>>> aTuple[1] = 5
Traceback (innermost last):
File "<stdin>", line 1, in ?
TypeError: object doesn‘t support item assignment

字典,是由键——值(key-value)构成。几乎所有的Python对象都可以作键,以数字和字符串最常用。
值可以是任意类型的Python对下那个,字典用大括号({})包裹。如下:

>>> aDict = {‘host‘: ‘earth‘} # create dict
>>> aDict[‘port‘] = 80 # add to dict
>>> aDict
{‘host‘: ‘earth‘, ‘port‘: 80}
>>> aDict.keys()
[‘host‘, ‘port‘]
>>> aDict[‘host‘]
‘earth‘
>>> for key in aDict:
... print key, aDict[key]
...
host earth
port 80

代码块通过缩进表达逻辑。不使用括号。可读性上的确更简洁。但是可能更多要求对代码层次的掌握。个人暂时仍不适应这种方式。但习惯它的方法。

时间: 2023-12-02 00:57:03

2015/8/10 Python基本使用(1)的相关文章

中级学员:2015年10月22日作业

中级学员:2015年10月22日作业一.采购管理1.采购管理的主要过程:2.工作说明书与范围说明书的区别:3.招投标程序是什么:4.采购审计的定义和内容.二.信息(文档)和配置管理1.文档从项目周期角度分为哪三类:2.图表编号规则,说明之:3.配置管理活动和流程:4.简述四种配置库及主要内容:5.简述配置项版本号标识的内容:6.功能配置审计包括哪些内容:7.物理配置审计包括哪些内容. 最晚提交时间:下次上课前. 提交方法:同学们按照要求完成作业,并发布在自己的51CTO博客,并将博文地址以评论的

陈嘉 2015/07/10 个人文档

姓名 陈嘉 日期 2015/7/10 主要工作及心得 在其他部分的代码合并完成后,我们开始了调试工作.我和赵晓铮负责操作员的调试. 程序合并完成运行后,出现了很多问题.一开始,输入用户名和密码后,并没有反应.没有输入提示信息.我们根据控制台显示的错误信息一一进行修改. 同过修改我明白了前期每个模块质量的重要性.任何一个模块的一点小问题都会导致系统不能正常运行.比如数据结构,函数传参.我们找到问题后由编写相关代码的同学进行修改,最后可以成功实现功能. 遇到的问题 调试过程中遇到无法登录.点击提交没

中级学员:2015年10月27日作业

中级学员:2015年10月27日作业一.项目收尾管理1.项目收尾包括哪三方面内容?2.项目总结的意义;3.项目总结会包括哪些内容:4.项目评估包括哪些方面:5.项目审计的定义.6.一般项目人员转移的流程:二.知识产权管理1.著作权由哪3个要素组成:2.认定职务作品,考虑的前提有哪2个:三.法律法规和标准规范1.标准名称由哪4个要素组成:2.政府采购法,包括哪六种采购方法,以及每种的前提条件:3.教材中,把标准分为基础标准.开发标准.??标准和??标准.四.请背诵教材P180页项目管理知识体系,并

高级学员:2015年10月24日作业

高级学员:2015年10月24日作业一.信息安全系统和安全体系1.信息安全系统三维空间示意图中,X.Y.Z轴的名称,及它们各自包括的内容:2.MIS+S.S-MIS.S2-MIS的特点分别有哪些:二.信息安全风险评估1.什么是威胁:2.什么是脆弱性(弱点):3.什么是影响三.安全策略1.安全策略的核心内容是哪七定:2.<计算机信息安全保护等级划分准则>将信息系统分为哪5个安全保护等级,以及它们的适用范围:四.信息安全技术基础1.常见的对称密钥算法有哪些?它们的优缺点:2.常见的非对称密钥算法有

高级:2015年10月23日作业答案

高级学员:2015年10月23日作业一.业务流程管理与重组1.流程管理的本质与核心是什么: 流程管理的核心是流程,流程管理的本质就是构造卓越的业务流程.2.流程管理与BPR的区别: 流程管理是以一种规范化的构造端到端的卓越业务流程为中心,以持续的提高组织业务绩效为目的的系统化方法.与业务流程重组的定义相似.流程管理的思想包含了BPR,但比BPR的概念更广泛,更适合现实需要.3.业务流程改进的过程和方法中,分析问题用哪2个图:寻找原因用什么图. 分析问题采用头脑风暴法.矩阵图法,寻找原因用鱼骨图法

高级学员:2015年10月23日作业

高级学员:2015年10月23日作业一.业务流程管理与重组1.流程管理的本质与核心是什么:2.流程管理与BPR的区别:3.业务流程改进的过程和方法中,分析问题用哪2个图:寻找原因用什么图.4.流程的分析与设计方法是哪六条(只答小标题):5.BPR的首要问题是什么:6.BPR的实施会引起企业哪3个方面的变化.二.知识管理1.对于项目组织来说,什么是知识.2.隐性知识的共享方法有哪4条:三.项目整体绩效评估1.什么是3E审计:2.霍尔从哪3个维度考察系统工程.3.用什么分别解决:确定性.可测定的不确

中级学员:2015年10月20日作业

中级学员:2015年10月20日作业一.项目沟通管理:1.项目沟通管理包括哪些过程:2.沟通管理计划的主要内容:3.项目干系人管理的方法(12.6.2)二.项目合同管理:4.无效合同的五条:5.总价合同的特征,及签订前提条件:6.合同质量.履行地点.履行期限.履行费用不明确的,分别如何处理:7.合同管理的主要内容包括哪四条:8."公平合理"是合同变更的处理原则,变更合同价款按哪些方法进行:9.项目索培的程序,包括哪六步. 最晚提交时间:下次上课前. 提交方法:同学们按照要求完成作业,并

高级学员:2015年10月17日作业

高级学员:2015年10月17日作业: 1.要约.要约邀请.承诺的定义,及你的理解: 2.项目配置管理的任务.P319 3.配置项版本号规则是什么.15.5.2 4.写论文,按要求,摘要不超过400字,正文不超过2750字,请写以下2篇之一:范围管理.成本管理.请任写一篇,另一篇写提纲. 1.要约.要约邀请.承诺的定义,及你的理解: 要约是希望和他人订立合同的意思表示,该意思表示应当符合下列规定:(一)内容具体确定:(二)表明经受要约人承诺,要约人即受该意思表示约束.(投标文件属于要约,乙方想和

高项学员:2015年10月10日作业

高项学员:2015年10月10日作业1.下载<政府采购法实施例例>2015年新发布的,并看一下(这个不用写,下面的是写的)2.沟通管理计划包括哪些内容?3.风险管理中,负面风险. 正向风险的应对策略?4.采购管理中,包括哪些内容?最晚提交时间:2015年10月12日(下次上课前).提交方法:同学们按照要求完成作业,并发布在自己的51CTO博客,并将博文地址以评论的形式发布在老师布置作业的评论区