python核心编程一书笔记之第一篇
#!/usr/bin/env python
# -*- coding:utf-8 -*-
#env 是一个命令用来寻找系统中的python解释器。第二条解释使用utf-8编码
在类unix系统中允许python为了防止出现找不到命令经常会加上一段申明,在python3以下的版本需要加上编码申明来实行兼容:
在python中的第一个案例:
print 'Hello World!'
#你好这个世界 嘿嘿!
print 这个命令用于输出,常用来查看变量里面的内容,或者输出一些内容显示给用户。
变量是会变的量所以叫做变量。变量可以帮助程序员记忆一些东西,所以一些变量名都是代表着一些内容。变量的起名规则:只能由数字,字母,下划线组成,其中数字不能开头,变量名最好可以给你一种见名起义的感觉,变量名不要起太长不方便记忆。
在python中_下划线可以起到重复上一条命令的作用例:
>>> 1 == 1
True
>>> _
True
>>>
在python中三种常用的字符串格式操作符%s,%d,%f %s代表字符串,%d代表整数,%f代表浮点型。例:
name1 = 'alex'
name2 = 'eric'
name3 = 'seven'
print 'name1:%s,name2:%s,name3%s' %('name1','name2','name3')#可加引号,也可不加,python3中必须加。
用户的输入可以用raw_input('')等待用户输入内容,如果等待用户输入的是密码可以这么做例:
import getpass
name = raw_input('You name:')
pwd = getpass.getpass('You pwd:')
如何将用户输入的字符串转换成整形例:
name1 = int(raw_input('Guess the number:'))
查询帮助信息help(内建函数)即可查帮助信息。
注释:帮助理解用的,有申明注释,代码注释例:
#!/usr/bin/env python
# -*- coding:utf-8 -*- #申明注释
# 可做当行注释
'''
''' #多行注释,可用三个单引号或者三个双引号不可混用。
算术操作符+ - * / // % **
前四种在python中与正常算术运算符一样,可正常加减,但不可字符串+,-整形, *对字符串使用的话可以成倍出现,除法中如果不带小数点会只留整数部分,//取整数部分,%取余,**用来幂运算
还有一些= , == , != <=, >= 第一个辅助运算,将右面的值赋给左边的值,这种运算都是先算右边再算左边。 ==比较 !=不等于.后面两个是大于等于喝小于等于。
还有一些特殊的布尔运算返回值为True 和False,和逻辑运算符返回值not, and, or not表示条件相反,and表示并且,or表示或。
字符串: 是 表示""引号和字符之类内容的集合,两个引号必须相同不可左边一个单引号,右边一个双引号,两个字符串直接如果用+就表示两个字符串内容和成一个字符串可以叫做连接运算,如果用*表示重复字符串,在字符串中还有一些索引的用法注:索引从0开始的[:3]的话只会输出3这个代表位前面的元素例:
>>> pystr = 'python'
>>> iscool = 'is cool'
>>> pystr[0]
'p'
>>> pystr[2:5]
'tho'
>>> iscool[:2]
'is'
>>> iscool[3:]
'cool'
>>> iscool[-1]
'l'
>>> pystr + iscool
'pythonis cool'
>>> pystr + ' ' + iscool
'python is cool'
>>> pystr * 2
'pythonpython'
>>> '-'*20
'--------------------'
>>> pystr = '''python
... is cool '''
>>> pystr
'python\n ... is cool '
>>> print pystr
python
... is cool
>>> iscool[-3]
'o'
>>> iscool[-3:]
'ool'
列表和元祖:可以保存python中任意类型任意数量的对象。列表用[]包裹里面的元素个数和元素值可以改变。元祖用()包裹里面的元素个数和元素值不可改变,可以当成可读,但元祖本身可以改变。列表和元祖都可以用切片来操作得到子集([][:])和字符串操作方法一样。不过它得到的子集不是单个的字符,而可能是一组字符,下面是一些列表和元祖的操作例:
>>> alist = [1,'s',3,4]
>>> alist
[1, 's', 3, 4]
>>> alist[0]
1
>>> alist[2:]
[3, 4]
>>> alist[:3]
[1, 's', 3]
>>> alist[1]=2
>>> alist
[1, 2, 3, 4]
>>> #元祖的切片操作
>>> atuple = ('robots',77,93,'try')
>>> atuple
('robots', 77, 93, 'try')
>>> atuple[:3]
('robots', 77, 93)
>>> atuple[1] = 5 Traceback (most recent call last):
File "<pyshell#11>", line 1, in <module>
atuple[1] = 5
TypeError: 'tuple' object does not support item assignment
>>>
字典:由键值对组成(key,value)字典用{}包裹里面的元素可以修改操作例:
>>> adict = {'host':'earth'}
>>> adict['port']=80
>>> adict
{'host': 'earth', 'port': 80}
>>> adict.keys()
['host', 'port']
>>> adict['host']
'earth'
>>> adict['earth']
Traceback (most recent call last):
File "<pyshell#5>", line 1, in <module>
adict['earth']
KeyError: 'earth'
>>> for key in adict:
print key,adict[key]
host earth
port 80
>>>
代码块的缩进和对齐:一级一级的对应,同级的缩进应该保持一致。
if语句:在if语句中判断条件是否符合,符合就往下执行,否则不执行例:
if True:
print 'hello'
if 1 == 0:
print 'no' hello if 1 == 0:
print 'no'
else:
print 'yes' yes
while循环:当条件满足时,会一直执行代码,直到条件不满足跳出。注意要保持缩进一致例
counter = 0
while counter < 3:
print 'loop #%d' %(counter)
counter += 1 loop #
loop #
loop #
for循环:需要连接一个变量往下执行例:
#-*- coding:utf-8 -*-
print 'I like to use the Internet for:'
for item in ['e-mail','net-surfing','homework','chat']:
print item I like to use the Internet for:
net-surfing
homework
chat #如果想让上面的例子执行在同一行只需要在print语句最后添加一个逗号 print 'I like to use the Internet for:'
for item in ['e-mail','net-surfing','homework','chat']:
print item,
I like to use the Internet for:
e-mail net-surfing homework chat
还有一种类似计数循环:
python核心编程一书笔记之第一篇的更多相关文章
- python参考手册一书笔记之第一篇上
在python2和python3的版本差异很大输出hello world的方法在2里支持在3里就不支持了. print 'hello world' #在2中支持 print ('hello world ...
- python核心编程第二版笔记
python核心编程第二版笔记由网友提供:open168 python核心编程--笔记(很详细,建议收藏) 解释器options:1.1 –d 提供调试输出1.2 –O 生成优化的字节码(生成 ...
- 《python核心编程》--读书笔记 第21章 数据库编程
准备:今天拿笔记本装了mysql,这样就能在不同地方用其他电脑远程访问同一个数据库了. python安装MySQLdb模块:http://www.codegood.com/downloads. 21. ...
- 《python核心编程》读书笔记--第18章 多线程编程
18.1引言 在多线程(multithreaded,MT)出现之前,电脑程序的运行由一个执行序列组成.多线程对某些任务来说是最理想的.这些任务有以下特点:它们本质上就是异步的,需要多个并发事务,各个事 ...
- 《python核心编程》读书笔记--第16章 网络编程
在进行网络编程之前,先对网络以及互联网协议做一个了解. 推荐阮一峰的博客:(感谢) http://www.ruanyifeng.com/blog/2012/05/internet_protocol_s ...
- 《python核心编程》读书笔记--第15章 正则表达式
15.1引言与动机 处理文本和数据是一件大事.正则表达式(RE)为高级文本匹配模式,为搜索-替换等功能提供了基础.RE是由一些字符和特殊符号组成的字符串,它们描述了这些字符和字符串的某种重复方式,因此 ...
- 《python核心编程》读书笔记——列表解析
列表解析是列表类型的方法,这种方法结合了列表的方括弧.for循环.if语句. 用for把处理后的值放入列表: squared = [ x**2 for x in range(4) ] for i in ...
- python核心编程--笔记
python核心编程--笔记 的解释器options: 1.1 –d 提供调试输出 1.2 –O 生成优化的字节码(生成.pyo文件) 1.3 –S 不导入site模块以在启动时查找pyt ...
- python核心编程--笔记(不定时跟新)(转)
的解释器options: 1.1 –d 提供调试输出 1.2 –O 生成优化的字节码(生成.pyo文件) 1.3 –S 不导入site模块以在启动时查找python路径 1.4 –v ...
随机推荐
- 如何使用IntelliJ IDEA的Favorites来管理项目中的常用代码
http://www.cnblogs.com/deng-cc/p/6530279.html
- Servlet第四篇【request对象常用方法、应用】
什么是HttpServletRequest HttpServletRequest**对象代表客户端的请求,当客户端通过HTTP协议访问服务器时,**HTTP请求头中的所有信息都封装在这个对象中,开发人 ...
- Thinkphp3.2版本使用163邮箱发(验证码)邮件
今天忽然想写一个用户修改密码的功能,又没有短信接口,只能选择用邮箱发送验证码啦,穷啊,没办法,哈哈,以下为正文. ------------------------------------------- ...
- 开始使用ASP.NET Core - 创建第一个Web应用
.NET Core 是.NET Framework的新一代跨平台应用程序开发框架,是微软在一开始发展时就开源的软件平台,由于 .NET Core 的开发目标是跨平台的 .NET 平台,因此 .NET ...
- 使用jquery的方法和技巧
1.下载一个jquery.js的文件 2.引入jquery.js文件 <script type="text/javascript" src="__PUBLIC__/ ...
- Delphi中 StrToIntDef函数的用法
Delphi中 StrToIntDef函数的用法:比如我要判断一个文本框里输入的字符串能不能转换为integer类型,如果能,则返回转换后的整型数据,如果不能,则返回整数0,那么我就可以用strtoi ...
- Egg + Vue 服务端渲染工程化实现
在实现 egg + vue 服务端渲染工程化实现之前,我们先来看看前面两篇关于Webpack构建和Egg的文章: 在 Webpack工程化解决方案easywebpack 文章中我们提到了基于 Vue ...
- Django内置的用户认证
认证登陆 在进行用户登陆验证的时候,如果是自己写代码,就必须要先查询数据库,看用户输入的用户名是否存在于数据库中: 如果用户存在于数据库中,然后再验证用户输入的密码,这样一来就要自己编写大量的代码. ...
- 使用python操作mysql
版权申明:本文为博主窗户(Colin Cai)原创,欢迎转帖.如要转贴,必须注明原文网址 http://www.cnblogs.com/Colin-Cai/p/7643047.html 作者:窗户 Q ...
- jsp web JavaBean MVC 架构 EL表达式 EL函数 JSTL
一.JavaBean概念(非常重要) 1.JavaBean就是遵循一定书写规范的Java类型(开发中:封装数据) a.必须有默认的构造方法,类必须是public的 public class ...