Python入门(2)

一、 基础语法
1.Print
print 是 python 里很基本很常见的一个操作,它的操作对象是一个字符串。
直接在 print 后面加一段文字来输出的话,需要给文字加上双引号或者单引号。大家应该发现了,print 除了打印文字之外,还能输出各种数字、运算结果、比较结果等。
2.输入
前面我们介绍了输出,既然有输出就肯定有输入,我们得有向程序“输入”信息的办法,才能和程序对话,进行所谓的“人机交互”。
Python 有一个接收命令行下输入的方法:input()。
举例:
print "Who do you think I am?"
input()
print "Oh, yes!"
运行后可以看到只输出第一行就停住了,那是因为input 在等待你的输入。
3.变量
变量,望文生义,就是变化的量。python 里创建一个变量的方法很简单,给它起个名字,然后给它一个值。
举起几个栗子:
name = 'Crossin'
myVar = 123
price = 5.99
visible = True
注意:“=”的作用把右边的值赋予给左边变量。
4.数据类型及类型转换
l 4种基本数据类型
- 字符串
- 整数
- 小数 (浮点数)
- bool 类型
l 类型转换
- int(x) #把 x 转换成整数# int('123') == 123
- float(x) #把 x 转换成浮点数#float('3.3') == 3.3
- str(x) #把 x 转换成字符串#str(111) == '111‘
- bool(x) #把 x 转换成 bool 值#bool(0) == False
5.Random
random.randint(a, b)可以生成一个 a 到 b 间的随机整数,包括 a 和 b。a、b 都必须是整数,且必须 b≥a。
random.random()生成一个 0 到 1 之间的随机浮点数,包括 0 但不包括 1,也就是[0.0, 1.0)。
random.uniform(a, b)生成 a、b 之间的随机浮点数。不过与 randint 不同的是,a、b 无需是整数,也不用考虑大小。
random.choice(seq)从序列中随机选取一个元素。seq 需要是一个序列,比如 list、元组、字符串。
random.randrange(start, stop, step)生成一个从 start 到 stop(不包括 stop),间隔为 step 的一个随机数。start、stop、step 都要为整数,且 start<stop。 start 和 step 都可以不提供参数,默认是从 0 开始,间隔为 1。但如果需要指定 step,则必须指定 start。
random.sample(population, k)从 population 序列中,随机获取 k 个元素,生成一个新序列。sample 不改变原来序列。
random.shuffle(x)把序列 x 中的元素顺序打乱。shuffle 直接改变原有的序列
6.字符串
l 字符串:一组字符的序列
l 格式:'string‘ or“string”
(1. 单引号=双引号 2.英文状态输入)
l 带引号字符串:使用不同引号区分
‘You are a "BAD" man’
“You are a ‘BAD’ man”
l 三个引号( ‘’‘)或者(""")
''' #方便使用单引号、双引号
“What‘s your name?” I asked. #直接换行
"I'm Han Meimei."
l “\”的用法(转义字符)
- I. \‘ 为单引号
- II. \“ 为双引号
- \\ 为字符串中的\
- \n 为字符串中的换行
- V. tips: “\”还可以在代码中换了行
“this is the \ # 输出this is the same line
same line"
l 字符串格式化
1.%d 对字符串进行格式化
num = 18 #%d 会被%后面的值替换
print 'My age is %d' % num
2.%f 格式化的数值是小数
print ‘Price is %f ’ % 4.99
3.%.2f保留两位小数
print ‘Price is %.2f ’ % 4.99
%s 来替换一段字符串
print 'Today is %s.' % 'Friday'
7.与”list”的第一次约会
l List: 列表 >>处理一组有序项目的数据结构
>>元素类型可以不一致
print range(1,10) #[1, 2, 3, 4, 5, 6, 7, 8, 9]
l 操作 list
1. 访问 list 中的元素
l = [365, 'everyday', 0.618, True]
print l[1] #计算机中的计数通常都是从 0 开始
2. 修改 list 中的元素 l[0] = 123
3. 向 list 中添加元素 l.append(1024)
4. 删除 list 中的元素 del l[0]
二、 流程控制
1.If
l If 如果是,xxx
l Else 否则,xxx
l Elif 否则---否则
a=3
if a==1:
print 'one'
elif a==2:
print 'two'
elif a==3:
print 'three'
else:
print 'too many‘ #three
2.While
while也是我们经常看到的,同 if 一样,while 也是一种控制流语句。
语法为:
while 条件:
循环执行的语句
举例:
a = 1 #先将a设为 1
while a != 0: #a不等于0就一直循环下面的语句
print "please input"
a = input()
print "over" #直到语句结束输出over
3.For
l for ... in ...
#输出1到10
for i in range(1, 11):#尾部有冒号
print i#前面有空格,一般3或4个
l for循环的本质:对一个序列中的元素进行递归
- 序列:一组有顺序的元素的集合
- 递归:函数包含了对其自身的调用
l 小结:for i in range(a, b)
l 从 a 循环至 b-1for i in range(a, b) ==从 a 循环至 b-1
4.break、continue
while 循环 在条件不满足时 结束 ,
for 循环 遍历完序列后 结束 。
如果在循环条件仍然满足或序列没有遍历完的时候 , 想要强行跳出循环 , 就需要用到 break
语句 。
while True:
a = raw_input()
if a == 'EOF':
break
*注意:无论是 continue 还是 break,其改变的仅仅是当前所处的最内层循环的运行,如果外
层还有循环,并不会因此略过或跳出。
三、 函数
- 1. 函数定义
函数就是一块语句,这块语句有个名字,你可以在需要时反复地使用这块语句。它有可能需要输入,有可能会返回输出。
2.无参数
def sayHello():#定义函数
print 'hello world!‘
sayHello()#调用函数
3.有参数
参数:在函数中相当于一个变量
def sayHello(someone):
print someone + ' says Hello!‘
sayHello(‘tom’)#传参数注意参数类型
四、 面向对象
- 定义:把数据和对数据的操作用一种叫做“对象”的东西包裹起来
- 2. 面向对象的方法
1. class Car:
2. speed = 0
3. def drive(self, distance):
4. time = distance / self.speed
5. print time
6.
7. car1 = Car()
8. car1.speed = 60.0
9. car1.drive(100.0)
10. car1.drive(200.0)
11.
12. car2 = Car()
13. car2.speed = 150.0
14. car2.drive(100.0)
15. car2.drive(200.0)
16.
3.总结
面向过程把数据和处理数据的计算全部放在一起,当功能复杂之后,就会显得很混乱,且容易产生很多重复的代码。
而面向对象,把一类数据和处理这类数据的方法封装在一个类中,让程序的结构更清晰,不同的功能之间相互独立。这样更有利于进行模块化的开发方式。
五、 正则表达式
- 正则表达式就是记录文本规则的代码。
- python 中的正则表达式库,所做的事情是利用正则表达式来搜索文本。要使用它,你必须会自己用正则表达式来描述文本规则。
- 元字符
⃰ \w - 匹配字母或数字或下划线或汉字(3.x 版本可以匹配汉字,但 2.x 版本不可以)
⃰ ^ - 匹配字符串的开始.。[^abcd]就是除 abcd 以外的任意字符。
⃰ $ - 匹配字符串的结束
⃰ \W - 匹配任意不是字母,数字,下划线,汉字的字符
⃰ “\d”匹配一个数字字符。等价于 [0-9]。
⃰ “\D”匹配一个非数字字符。等价于 [^0-9]
Python入门(2)的更多相关文章
- python入门简介
Python前世今生 python的创始人为吉多·范罗苏姆(Guido van Rossum).1989年的圣诞节期间,吉多·范罗苏姆为了在阿姆斯特丹打发时间,决心开发一个新的脚本解释程序,作为ABC ...
- python入门学习课程推荐
最近在学习自动化,学习过程中,越来越发现coding能力的重要性,不会coding,基本不能开展自动化测试(自动化工具只是辅助). 故:痛定思痛,先花2个星期将python基础知识学习后,再进入自动化 ...
- Python运算符,python入门到精通[五]
运算符用于执行程序代码运算,会针对一个以上操作数项目来进行运算.例如:2+3,其操作数是2和3,而运算符则是“+”.在计算器语言中运算符大致可以分为5种类型:算术运算符.连接运算符.关系运算符.赋值运 ...
- Python基本语法[二],python入门到精通[四]
在上一篇博客Python基本语法,python入门到精通[二]已经为大家简单介绍了一下python的基本语法,上一篇博客的基本语法只是一个预览版的,目的是让大家对python的基本语法有个大概的了解. ...
- Python基本语法,python入门到精通[二]
在上一篇博客Windows搭建python开发环境,python入门到精通[一]我们已经在自己的windows电脑上搭建好了python的开发环境,这篇博客呢我就开始学习一下Python的基本语法.现 ...
- visual studio 2015 搭建python开发环境,python入门到精通[三]
在上一篇博客Windows搭建python开发环境,python入门到精通[一]很多园友提到希望使用visual studio 2013/visual studio 2015 python做demo, ...
- python入门教程链接
python安装 选择 2.7及以上版本 linux: 一般都自带 windows: https://www.python.org/downloads/windows/ mac os: https:/ ...
- Python学习【第二篇】Python入门
Python入门 Hello World程序 在linux下创建一个叫hello.py,并输入 print("Hello World!") 然后执行命令:python hello. ...
- python入门练习题1
常见python入门练习题 1.执行python脚本的两种方法 第一种:给python脚本一个可执行的权限,进入到当前存放python程序的目录,给一个x可执行权限,如:有一个homework.py文 ...
- Python入门版
一.前言 陆陆续续学习Python已经近半年时间了,感觉到Python的强大之外,也深刻体会到Python的艺术.哲学.曾经的约定,到现在才兑现,其中不乏有很多懈怠,狼狈. Python入门关于Pyt ...
随机推荐
- 【CSS】思考和再学习——关于CSS中浮动和定位对元素宽度/外边距/其他元素所占空间的影响
一.width:auto和width:100%的区别 1.width:100%的作用是占满它的参考元素的宽度.(一般情况下参考元素 == 父级元素,这里写成参考元素而不是父级元素,在下面我会再 ...
- 利用GROUP_CONCAT和GROUP BY实现字段拼接
在开发过程中遇到这样的一个需求,通过GROUP BY分组归类后将同属性的字段进行拼接. 表结构为: id value a b c a b 需要得到结果: id value a,b,c a,b 一开始在 ...
- ThinkPHP3.2——基础
1.1.获取ThinkPHP 3.2 获取ThinkPHP的方式很多,官方网站(http://thinkphp.cn)是最好的下载和文档获取来源. 官网提供了稳定版本的下载:http://thinkp ...
- redis-key相关命令
本篇主要介绍和redis的key进行操作的相关命令. 命令 描述 复杂度 返回值 DEL key [key ...] 删除给定的一个或多个 key .不存在的 key 会被忽略.删除单个列表.集合.有 ...
- 无分类编址(CIDR)构成超网
CIDR(无分类域间路由选择) CIDR最主要有两个以下特点: 消除传统的A,B,C地址和划分子网的概念,更有效的分配IPv4的地址空间,CIDR使IP地址又回到无分类的两级编码.记法:IP地址::= ...
- 去掉iframe默认滚动条后影响正常滚动以及js解决高度自适应。
对于iframe,相信大家都是知道存在很多弊端,比如说不利于搜索引擎的抓取:产生冗余结构体系不易管理等.不过在漫长的开发路上有时候使用是不可避免的. 前两天在做一个退弹的功能的时候使用了iframe, ...
- javaWeb基础核心之一Servlet
既然是做JAVA开发的,先从一些基本的整理起来,算是知识回顾,加深记忆. 第一篇想到那理到哪,可能有点乱,不是太会排版,见谅,估计可能也就我自己看的懂. servlet在百度百科上的定义是这样的: S ...
- 使用cmd来起一个服务器
第一步:安装Node.js 下载地址:https://nodejs.org/en/ 第二步:打开cmd,输入node -v 确认是否安装成功,成功后显示版本号如下: 第三步:输入命令:ndoe ins ...
- Apache solr(二)
上一篇试着进行了solr的安装和配置,以及如何solr的检索,今天试着简单的将solr连接MySQL数据库(才尝试了单表.一对多和多对多的还有待研究) 1.MySQL的目录结构 2.新建一个democ ...
- liunx命令1
单词整理 terminal:终端 network-scripts:网络脚本 passwd:密码文件 nologin:禁止登陆 shutdown:关机 reboot:重启 poweroff:关机 gre ...