day39Python
1.Python简介
Python 是一个高层次的结合了解释性、编译性、互动性和面向对象的脚本语言。
Python 的设计具有很强的可读性,相比其他语言经常使用英文关键字,其他语言的一些标点符号,它具有比其他语言更有特色语法结构。
l Python是一种解释型语言: 这意味着开发过程中没有了编译这个环节。类似于PHP和Perl语言。 PS:不用编译
l Python是交互式语言: 这意味着,您可以在一个Python提示符,直接互动执行写你的程序。 PS:cmd
l Python是面向对象语言: 这意味着Python支持面向对象的风格或代码封装在对象的编程技术。
l Python是初学者的语言:Python 对初级程序员而言,是一种伟大的语言,它支持广泛的应用程序开发,从简单的文字处理到WWW浏览器再到游戏
----------------------------------------------------------
1.2.1 Python安装
PS:和java类似要安装Python环境,同时配置环境变量和ide工具;
PS:一件式 安装,只需要
anaconda(已经包含了很多东西了)和IDE
PS:目前Python有两个版本,但是版本之间还不是太兼容,语法差别有点大
有两大系列 python 2.x
Python 3.x
---------------------Python的语法
PS:
1.句子结尾可以不加分号
2.字符串可以单引号、双引号或者换行三引号
1.3.Python基本语法
1.3.1 行和缩进
Python中,不使用括号来表示代码的类和函数定义块或流程控制。
代码块是由行缩进,缩进位的数目是可变的,但是在块中的所有语句必须缩进相同的量。
如下所示:
if True: print "True" else: print "False" |
然而,在本实施例中的第二块将产生一个错误:
if True: print "Answer" print "True" else: print "Answer" print "False" |
PS:第一句是为了防止编译中文字符错误所写的
# -*- coding:UTF-8 -*-
print ('hello world');#我会报错true
if True:
print("true")
else:
print("false")#如果
1.3.2 Python引号
Python接受单引号('),双引号(“)和三(''或”“”)引用,以表示字符串常量,只要是同一类型的引号开始和结束的字符串。
三重引号可以用于跨越多个行的字符串。例如,所有下列是合法的:
word = 'word' sentence = "This is a sentence." paragraph = """This is a paragraph. It is made up of multiple lines and sentences.""" |
1.3.3 Python注释
“#”号之后字符和到物理行是注释的一部分,Python解释器会忽略它们。
#!/usr/bin/python # First comment print "Hello, Python!"; # second comment 这将产生以下结果: Hello, Python! 注释可能会在声明中表达或同一行之后: name = "Madisetti" # This is again comment 你可以使用多行注释如下: # This is a comment. # This is a comment, too. # This is a comment, too. # I said that already. |
1.3.4 分号的使用
python中一个语句的结束不需要使用分号
如果想在一行中输入多个语句,可使用分号:
import sys; x = 'foo'; sys.stdout.write(x+""" """) |
1.4.Python的变量和集合
PS:集合中的数据都是可以为任意类型的
Python有五个标准的数据类型:
a) 数字
b) 字符串
c) 列表
d) 元组
e) 字典
f) set
python中定义变量时不需要显示指定变量类型,以下为python中变量使用的典型语法:
1.4.1变量定义和赋值
PS:变量的会采用享元模式,我们可以看到他们地址一样
#基本使用 counter = 100 # 整型 miles = 1000.0 # 浮点 name = "John" # 字符串 print counter print miles print name #多重赋值 a = b = c = 1 d, e, f = 1, 2, "john" |
1.4.2字符串的使用
str = 'Hello World!' #字符串在python中本质上是一个字符序列Seq print str # 打印整个字符串 print str[0] # 打印字符串第一个字母 print str[2:5] # 打印第3到第5个字母 print str[2:] # 打印从第3个字母到末尾 print str * 2 # 字符串重复2次 print str + "TEST" # 字符串拼接 |
1.4.3列表的使用
list = [ 'abcd', 786 , 2.23, 'john', 70.2 ] tinylist = [123, 'john'] print list # 打印整个列表 print list[0] # 打印第一个元素 print list[1:3] # 打印第二和第三个元素 print list[2:] # 打印第三个元素到末尾 print tinylist * 2 # 打印2次 print list + tinylist # 拼接两个list #修改list中的元素 list[0]=”python” print(list) |
将输出以下结果:
['abcd', 786, 2.23, 'john', 70.200000000000003] abcd [786, 2.23] [2.23, 'john', 70.200000000000003] [123, 'john', 123, 'john'] ['abcd', 786, 2.23, 'john', 70.200000000000003, 123, 'john'] |
1.4.4元组使用
元组是类似于列表中的序列数据类型,一个元组由数个逗号分隔的值组成。
列表和元组之间的主要区别是:列表用方括号[],列表的长度和元素值是可以改变的
而元组用圆括号(),不能被更新。
元组可以被认为是只读列表。
tuple = ( 'abcd', 786 , 2.23, 'john', 70.2) tinytuple = (123, 'john') print tuple # 打印整个元组 print tuple[0] # 打印第一个元素 print tuple[1:3] # 打印第2、3两个元素 print tuple[2:] # print tinytuple * 2 # 重复2遍 print tuple + tinytuple # 拼接 |
这将产生以下结果:
('abcd', 786, 2.23, 'john', 70.200000000000003) abcd (786, 2.23) (2.23, 'john', 70.200000000000003) (123, 'john', 123, 'john') ('abcd', 786, 2.23, 'john', 70.200000000000003, 123, 'john') |
1.4.5字典
Python字典是一种哈希表型。由“键-值”对组成。
键可以是任何Python类型,但通常是数字或字符串。
值可以是任意Python的对象。
字典是由花括号括号{},可分配值,并用方括号[]访问。例如:
PS:经过验证 值就为list结构
tinydict = {'name': 'john','code': ( 'abcd', 786 , 2.23, 'john', 70.2), 'dept': 'sales'}
print(tinydict['code'])
dict = {} dict['one'] = "This is one" dict[2] = "This is two" tinydict = {'name': 'john','code':6734, 'dept': 'sales'} print dict['one'] # Prints value for 'one' key print dict[2] # Prints value for 2 key print tinydict # Prints complete dictionary print tinydict.keys() # Prints all the keys print tinydict.values() # Prints all the values |
这将产生以下结果:
This is one This is two {'dept': 'sales', 'code': 6734, 'name': 'john'} ['dept', 'code', 'name'] ['sales', 6734, 'john'] |
1.4.6 set
ab={1,2,3,4,5,'xxx', ( 'abcd', 786 , 2.23, 'john', 70.2)}
定义一个set:
a={1,2,3,4,5}
print a
a.remove(3)
a.add(6)
a.union(b)
-----------------------------------------------------------
1.5.Python流程控制语法
1.5.1 if语句
var1 = 100 if var1: print "1 - Got a true expression value" print var1 var2 = 0 if var2: print "2 - Got a true expression value" print var2 print "Good bye!" #if的条件可以是数字或字符串或者布尔值True和False(布尔表达式) #如果是数字,则只要不等于0,就为true #如果是字符串,则只要不是空串,就为true |
if else
var = 100 if var == 200: print "1 - Got a true expression value" print var elif var == 150: print "2 - Got a true expression value" print var elif var == 100: print "3 - Got a true expression value" print var else: print "4 - Got a false expression value" print var print "Good bye!" |
嵌套if else
var = 100 if var < 200: print "Expression value is less than 200" if var == 150: print "Which is 150" elif var == 100: print "Which is 100" elif var == 50: print "Which is 50" elif var < 50: print "Expression value is less than 50" else: print "Could not find true expression" print "Good bye!" |
1.5.2 while循环
count = 0 while count < 5: print count, " is less than 5" count = count + 1 else: print count, " is not less than 5" |
1.5.3 for循环
# 求素数 for num in range(10,20): for i in range(2,num): if num%i == 0: j=num/i print '%d equals %d * %d' % (num,i,j) break else: print num, 'is a prime number' #遍历集合 r=range(10,20) r={1,2,3,4,5} #set类型 r=["aaa",3,"c"] print(r) for num in r: print(num) r={"a":9,"b":10} print(r) for num in r.values(): print(num) |
当执行上面的代码,产生以下结果:
10 equals 2 * 5 11 is a prime number 12 equals 2 * 6 13 is a prime number 14 equals 2 * 7 15 equals 3 * 5 16 equals 2 * 8 17 is a prime number 18 equals 2 * 9 19 is a prime number |
day39Python的更多相关文章
- 老男孩Python全栈第2期+课件笔记【高清完整92天整套视频教程】
点击了解更多Python课程>>> 老男孩Python全栈第2期+课件笔记[高清完整92天整套视频教程] 课程目录 ├─day01-python 全栈开发-基础篇 │ 01 pyth ...
- 老男孩Python高级全栈开发工程师三期完整无加密带课件(共104天)
点击了解更多Python课程>>> 老男孩Python高级全栈开发工程师三期完整无加密带课件(共104天) 课程大纲 1.这一期比之前的Python培新课程增加了很多干货:Linux ...
随机推荐
- MYSQL数据库字母数字混合字段排序问题
对MySQL数据表里的一个字符型字段排序,其内容格式为一位字母+顺序数字.数字没有前导零,长度不固定.这种含字母的数字序列,排序出来的结果和我们想要的结果是不一样的,因为它不是纯数字,只能按字符规则排 ...
- Linux7 下重新安装YUM
所有操作均在ROOT用户下,系统版本是Linux7.0 X86_64: 一.删除原有YUM # rpm -aq|grep yum|xargs rpm -e --nodeps 二.下载yum,注意自己的 ...
- js 循环遍历数组
var a =[1,3,4]; a.each(functiom{ .... }) or for (var x in a ){ .... }
- IBM MQ 集成CXF 发送JMS 消息
0.POM依赖 <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w ...
- 实力封装:Unity打包AssetBundle(三)
前情提要:第二种打包方式 窗口初现 通过前面的两篇教程和一篇番外,我们已经完全实现了打包的功能.但是使用起来总是觉得有些晦涩别扭,如果不告诉别人怎么使用,对方肯定是一头雾水. What?你给我的这是啥 ...
- if-else和while循环
用户登陆验证: if-else 判断 #!/usr/bin/env python # -*-coding:utf-8 -*- import getpass passwd=' name='sunhao' ...
- wxPython的使用--类似画板的界面
# -*- coding: utf-8 -*-import wximport wx.lib.buttonsimport cPickleimport os class PaintWindow(wx.Wi ...
- linux的python版本升级
可利用Linux自带下载工具wget下载,如下所示: # wget http://www.python.org/ftp/python/2.7.3/Python-2.7.13.tgz 下载完成后 ...
- python 正则进阶
1.group 除了简单地判断是否匹配之外,正则表达式还有提取子串的强大功能.用()表示的就是要提取的分组(Group).比如:^(\d{3})-(\d{3,8})$分别定义了两个组,可以直接从匹配的 ...
- python 三方库
---------------- 这又是一个 Awesome XXX 系列的资源整理,由 vinta 发起和维护.内容包括:Web框架.网络爬虫.网络内容提取.模板引擎.数据库.数据可视化.图片处理. ...