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 ...
随机推荐
- 2017Unity开发者大会备受关注的原因有哪些?
Unite大会是由Unity举办的全球开发者大会,至今已有10年的历史.从最开始Unity开发者大会仅500人,到现在Unity大会已经增长到5000人,10倍的参与人数,Unity开发者大会仅仅用了 ...
- 【2017-05-05】timer控件、三级联动、帐号激活权限设置
一.Timer控件 Timer实际就是一个线程控件. 属性:Enabled 是否被启用 Interval 多长时间执行一次控件中的代码 事件: Tick 事件中放要执行的代码. ...
- 文件查找---find
文件查找(find) 1 find 简单的说,就是实时查找指定的内容或条件.特点:最新.最快.最准确. 用法:find [查找路径] [查找条件] [找到后进行的动作] eg. find /e ...
- TCP三次握手(建立连接)/四次挥手(关闭连接)
TCP数据包格式 顺序号(32位):用来标识从TCP源端向TCP目的端发送的数据字节流,它表示在这个报文段中的第一个数据字节的顺序号.如果将字节流看作在两个应用程序间的单向流动,则TCP用顺序号对每个 ...
- springboot(四):thymeleaf使用详解
在上篇文章springboot(二):web综合开发中简单介绍了一下thymeleaf,这篇文章将更加全面详细的介绍thymeleaf的使用.thymeleaf 是新一代的模板引擎,在spring4. ...
- LeetCode Weekly Contest
链接:https://leetcode.com/contest/leetcode-weekly-contest-33/ A.Longest Harmonious Subsequence 思路:hash ...
- 面试(1)-java-se-字符串
http://blog.csdn.net/zhangerqing/article/details/8093919 hashCode和identityHashCode的区别 I. hashCode()方 ...
- 开涛spring3(6.2) - AOP 之 6.2 AOP的HelloWorld
6.2.1 准备环境 首先准备开发需要的jar包 org.springframework.aop-3.0.5.RELEASE.jar com.springsource.org.aspectj.w ...
- 详解Linux进程(作业)的查看和杀死
目录: 引入进程 进程 线程 PS命令 TOP命令 其他查看进程命令 进程的优先级 作业控制机制 kill命令 一.引入进程 1.内存划分为:用户空间和内核空间 1.在用户空间里运行的进程,就是用户进 ...
- SQL注入攻击[详解]
SQL注入攻击是黑客对数据库进行攻击的常用手段之一.随着B/S模式应用开发的发展,使用这种模式编写应用程序的程序员也越来越多.但是由于程序员的水平及经验也参差不齐,相当大一部分程序员在编写代码的时候, ...