一、    基础语法

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种基本数据类型

  1. 字符串
  2. 整数
  3. 小数 (浮点数)
  4. bool 类型

l 类型转换

  1. int(x) #把 x 转换成整数# int('123') == 123
  2. float(x) #把 x 转换成浮点数#float('3.3') == 3.3
  3. str(x) #把 x 转换成字符串#str(111) == '111‘
  4. 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 “\”的用法(转义字符)

  1. I.             \‘  为单引号
  2. II.            \“ 为双引号
  3. \\  为字符串中的\
  4. \n 为字符串中的换行
  5. 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循环的本质:对一个序列中的元素进行递归

  1. 序列:一组有顺序的元素的集合
  2. 递归:函数包含了对其自身的调用

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. 1.   函数定义

函数就是一块语句,这块语句有个名字,你可以在需要时反复地使用这块语句。它有可能需要输入,有可能会返回输出。

2.无参数

def sayHello():#定义函数

print 'hello world!‘

sayHello()#调用函数

3.有参数

参数:在函数中相当于一个变量

def sayHello(someone):

print someone + ' says Hello!‘

sayHello(‘tom’)#传参数注意参数类型

四、    面向对象

  1. 定义:把数据和对数据的操作用一种叫做“对象”的东西包裹起来
  1. 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.总结

面向过程把数据和处理数据的计算全部放在一起,当功能复杂之后,就会显得很混乱,且容易产生很多重复的代码。

而面向对象,把一类数据和处理这类数据的方法封装在一个类中,让程序的结构更清晰,不同的功能之间相互独立。这样更有利于进行模块化的开发方式。

五、    正则表达式

  1. 正则表达式就是记录文本规则的代码。
  2. python 中的正则表达式库,所做的事情是利用正则表达式来搜索文本。要使用它,你必须会自己用正则表达式来描述文本规则。
  3. 元字符

⃰       \w - 匹配字母或数字或下划线或汉字(3.x 版本可以匹配汉字,但 2.x 版本不可以)

⃰       ^ - 匹配字符串的开始.。[^abcd]就是除 abcd 以外的任意字符。

⃰       $ - 匹配字符串的结束

⃰       \W - 匹配任意不是字母,数字,下划线,汉字的字符

⃰       “\d”匹配一个数字字符。等价于 [0-9]。

⃰       “\D”匹配一个非数字字符。等价于 [^0-9]

Python入门(2)的更多相关文章

  1. python入门简介

    Python前世今生 python的创始人为吉多·范罗苏姆(Guido van Rossum).1989年的圣诞节期间,吉多·范罗苏姆为了在阿姆斯特丹打发时间,决心开发一个新的脚本解释程序,作为ABC ...

  2. python入门学习课程推荐

    最近在学习自动化,学习过程中,越来越发现coding能力的重要性,不会coding,基本不能开展自动化测试(自动化工具只是辅助). 故:痛定思痛,先花2个星期将python基础知识学习后,再进入自动化 ...

  3. Python运算符,python入门到精通[五]

    运算符用于执行程序代码运算,会针对一个以上操作数项目来进行运算.例如:2+3,其操作数是2和3,而运算符则是“+”.在计算器语言中运算符大致可以分为5种类型:算术运算符.连接运算符.关系运算符.赋值运 ...

  4. Python基本语法[二],python入门到精通[四]

    在上一篇博客Python基本语法,python入门到精通[二]已经为大家简单介绍了一下python的基本语法,上一篇博客的基本语法只是一个预览版的,目的是让大家对python的基本语法有个大概的了解. ...

  5. Python基本语法,python入门到精通[二]

    在上一篇博客Windows搭建python开发环境,python入门到精通[一]我们已经在自己的windows电脑上搭建好了python的开发环境,这篇博客呢我就开始学习一下Python的基本语法.现 ...

  6. visual studio 2015 搭建python开发环境,python入门到精通[三]

    在上一篇博客Windows搭建python开发环境,python入门到精通[一]很多园友提到希望使用visual studio 2013/visual studio 2015 python做demo, ...

  7. python入门教程链接

    python安装 选择 2.7及以上版本 linux: 一般都自带 windows: https://www.python.org/downloads/windows/ mac os: https:/ ...

  8. Python学习【第二篇】Python入门

    Python入门 Hello World程序 在linux下创建一个叫hello.py,并输入 print("Hello World!") 然后执行命令:python hello. ...

  9. python入门练习题1

    常见python入门练习题 1.执行python脚本的两种方法 第一种:给python脚本一个可执行的权限,进入到当前存放python程序的目录,给一个x可执行权限,如:有一个homework.py文 ...

  10. Python入门版

    一.前言 陆陆续续学习Python已经近半年时间了,感觉到Python的强大之外,也深刻体会到Python的艺术.哲学.曾经的约定,到现在才兑现,其中不乏有很多懈怠,狼狈. Python入门关于Pyt ...

随机推荐

  1. 2017Unity开发者大会备受关注的原因有哪些?

    Unite大会是由Unity举办的全球开发者大会,至今已有10年的历史.从最开始Unity开发者大会仅500人,到现在Unity大会已经增长到5000人,10倍的参与人数,Unity开发者大会仅仅用了 ...

  2. 【2017-05-05】timer控件、三级联动、帐号激活权限设置

    一.Timer控件 Timer实际就是一个线程控件. 属性:Enabled    是否被启用 Interval     多长时间执行一次控件中的代码 事件: Tick     事件中放要执行的代码. ...

  3. 文件查找---find

    文件查找(find) 1 find 简单的说,就是实时查找指定的内容或条件.特点:最新.最快.最准确. 用法:find [查找路径] [查找条件] [找到后进行的动作]     eg. find /e ...

  4. TCP三次握手(建立连接)/四次挥手(关闭连接)

    TCP数据包格式 顺序号(32位):用来标识从TCP源端向TCP目的端发送的数据字节流,它表示在这个报文段中的第一个数据字节的顺序号.如果将字节流看作在两个应用程序间的单向流动,则TCP用顺序号对每个 ...

  5. springboot(四):thymeleaf使用详解

    在上篇文章springboot(二):web综合开发中简单介绍了一下thymeleaf,这篇文章将更加全面详细的介绍thymeleaf的使用.thymeleaf 是新一代的模板引擎,在spring4. ...

  6. LeetCode Weekly Contest

    链接:https://leetcode.com/contest/leetcode-weekly-contest-33/ A.Longest Harmonious Subsequence 思路:hash ...

  7. 面试(1)-java-se-字符串

    http://blog.csdn.net/zhangerqing/article/details/8093919 hashCode和identityHashCode的区别 I. hashCode()方 ...

  8. 开涛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 ...

  9. 详解Linux进程(作业)的查看和杀死

    目录: 引入进程 进程 线程 PS命令 TOP命令 其他查看进程命令 进程的优先级 作业控制机制 kill命令 一.引入进程 1.内存划分为:用户空间和内核空间 1.在用户空间里运行的进程,就是用户进 ...

  10. SQL注入攻击[详解]

    SQL注入攻击是黑客对数据库进行攻击的常用手段之一.随着B/S模式应用开发的发展,使用这种模式编写应用程序的程序员也越来越多.但是由于程序员的水平及经验也参差不齐,相当大一部分程序员在编写代码的时候, ...