什么是程序?

程序等于数据结构加算法,那么数据结构是一个静态的东西,算法是一个动态的东西,我们用一个新的语言编写这个程序,我们要考虑到语言也主要由数据结构和算法相关的东西,或静态或动态的东西来构成,所以我们可以把一门语言进行拆解,比如现在这门语言就是Python,那么Python这门语言是就拆解为面向对象和面向过程,那么我们知道以前的程序语言C语言就是面向过程的语言,而C++就是面向对象的语言,然后横向的我们还要考虑数据结构和算法。这样我们可以把一门语言的学习氛围四大块,第一款就是面向过程的数据结构,第二块我们成为面向过程的算法。数据结构是静态的,算法是动态的,我们用计算机描述这个世界,世界是可以被我们计算机语言来描述的,我们就用动态和静态来概况就好了,第三区域是面向对象的数据结构,第四区域是面向对象的算法。

  数据类型是一个静态的类型,一种静态的数据结构,是面向过程的,而后面我们要学的类和接口也是静态的结构,它是面向对象的数据结构。

Python面向过程的数据结构有哪些?

  有常量、变量、注释、基本数据类型、还有一些复杂的数据类型、比如列表、元组、字典等等,然后面向过程的算法,这是一个动态的东西,它包含了基本的运算符,比如大家常见的一些数据运算、逻辑运算符等等、还有一些流程控制的语句、比如条件语句、循环语句等等。

  面向对象的数据结构有类、属性、模块,面向对象的算法有构造和析构过程。

Python变量、常量与数据类型

1 怎么定义变量和常量

 name = ‘richie’  给变量赋予一个名称“name”、让它等于richie。在Python没有真正意义上的常量,二十用一个大写的规定或标定表示一个常量。

 python注释就是用一个简单的 ‘#’来表示 多行注释用三个单引号包含起来 ‘’‘ 注释内容’‘’。Python是自猜想数据类型,就是我们不用特别铭心啊的方法指定它的数据类型就可以来完成我们的工作,它会自动的去设定他的数据类型。它的基础数据类型是整形、浮点数、字符串、布尔。

  age = 121 代表他就是一个整形变量,然后我们怎么判断他是不是一个整形变量呢,有一个小函数、python内置了很多的库,我们只需要把用一个type然后把age传进去就可以输出age的类型了。

输入代码 name=richie 就是一个字符串变量,我们在type(name)就可以看到str出来。

  我们需要注意的是,Python里面是大小写识别的,所以“True”一定要首字母大写,在python里常量是可以被修改的。

2 数据类型怎样进行转换

  如果我们要把一个整形转换成字符串 name = str(12321)

  1. name = str(12321)
    print(type(name))
    <class 'str'>

  如果要讲一个字符串要转换成整形 age = int('123').

  1. name = ''
  2. age = int(name)
  3. print(age,type(age))
  4. 123 <class 'int'>

  字符串拼接

  1. a1 = 'hello '
  2. a2 = 'world'
  3. print(a1+a1)
  4. hello world

  字符串格式化输出

  1. name = 'hello \n , %s' % 'hello'
  2. print(name)
  3. hello
  4. , hello

Python列表、元组、字典

  python里面有三个复杂数据类型、一个是列表、一个是元组、一个是字典、列表很容易理解、就是一个串行的数据结构、就是一组的字符列表。

比如我们定义一个列表。

  1. zoo = ['sheep','monkey','dog','cat','cattle']
  2. print(len(zoo),type(zoo))
  3. print(zoo[1])

 我们可以通过列表的函数知道长度、类型、我们还可以使用索引找到第二个元素的值,列表的可以存储多个类型的值,如

  1. l = ['beijing','shanghai',2131,12]

元组实际上有类似与其他语言里面的枚举类型,实际上他是支持各种类型在一起的,比如我们要描述一个商品信息

  1. apple=('shanxi','red',12)

  定义一个苹果 它产地 shanxi 颜色 red 价格 12,然后运行

  字典就是配对关系,键值对的组合

  1. msg = {'name':'richie','age':18}
  2. print(msg['name'])

  其中字典的key值必须是不可变类型的的,我们要的得到姓名,可以用key值索引找到对应的value值。

条件语句

   运算符是非常简单的东西,特殊的就是百分号之类的,这些和其他语言都是类似的。

  1. print(1212+1212)
  2. 2424
  3.  
  4. print(2323/2343)
  5. 0
  6.  
  7. print(1212 - 1210)
  8. 2

  然后我们看一下流程控制语句,很多人都觉得条件语句是最重要的,可以称为判断语句,然后第二重要的语句就是循环

  

  1. a = 15
  2. if a > 10:
  3. print(True)
  4. else:
  5. print(False)

循环语句

  输入 name="richie" 我们要把这个字符串循打印出来,使用for循环name中的每个字符输出 ,while循环和for循环道理是一样的

  1. name = 'richie'
  2. for x in name:
  3. print(x)
  4. #结果为:
  5. r
  6. i
  7. c
  8. h
  9. i
  10. e

  “for x“就是新定义的临时变量,缩进没有明确的要求。使用开发工具 如pycharm代码会自动缩进,它还能把这些变量都找出来,所以使用到IDE开发会很方便

还有一个软件 ‘subline’也非常方便,不过这个软件定义python文件时需要以.py结尾,ide工具很多,我们可以根据自己喜好选择。

python语言学习笔记整理的更多相关文章

  1. python学习笔记整理——字典

    python学习笔记整理 数据结构--字典 无序的 {键:值} 对集合 用于查询的方法 len(d) Return the number of items in the dictionary d. 返 ...

  2. Deep Learning(深度学习)学习笔记整理系列之(七)

    Deep Learning(深度学习)学习笔记整理系列 zouxy09@qq.com http://blog.csdn.net/zouxy09 作者:Zouxy version 1.0 2013-04 ...

  3. Deep Learning(深度学习)学习笔记整理系列之(二)

    Deep Learning(深度学习)学习笔记整理系列 zouxy09@qq.com http://blog.csdn.net/zouxy09 作者:Zouxy version 1.0 2013-04 ...

  4. Go语言学习笔记十三: Map集合

    Go语言学习笔记十三: Map集合 Map在每种语言中基本都有,Java中是属于集合类Map,其包括HashMap, TreeMap等.而Python语言直接就属于一种类型,写法上比Java还简单. ...

  5. Go语言学习笔记十二: 范围(Range)

    Go语言学习笔记十二: 范围(Range) rang这个关键字主要用来遍历数组,切片,通道或Map.在数组和切片中返回索引值,在Map中返回key. 这个特别像python的方式.不过写法上比较怪异使 ...

  6. Go语言学习笔记十一: 切片(slice)

    Go语言学习笔记十一: 切片(slice) 切片这个概念我是从python语言中学到的,当时感觉这个东西真的比较好用.不像java语言写起来就比较繁琐.不过我觉得未来java语法也会支持的. 定义切片 ...

  7. Go语言学习笔记七: 函数

    Go语言学习笔记七: 函数 Go语言有函数还有方法,神奇不.这有点像python了. 函数定义 func function_name( [parameter list] ) [return_types ...

  8. Go语言学习笔记五: 条件语句

    Go语言学习笔记五: 条件语句 if语句 if 布尔表达式 { /* 在布尔表达式为 true 时执行 */ } 竟然没有括号,和python很像.但是有大括号,与python又不一样. 例子: pa ...

  9. Go语言学习笔记一: Hello World

    Go语言学习笔记一: Hello World 听说Go语言又快又简单.即具有C语言的运行速度,又具有Python语言的开发效率,不知道真的假的.所以特意来学学这门"老"语言. 下载 ...

随机推荐

  1. (转)java中的方法区

    首先要说明的是,此文章转载自 http://blog.csdn.net/zzhangxiaoyun/article/details/7518917 谢谢作者.是本人认为对方法区解释得比较清楚的一篇文章 ...

  2. 盘点selenium phantomJS使用的坑

    参考:http://www.jianshu.com/p/9d408e21dc3a   http://www.cnblogs.com/luxiaojun/p/6144748.html 豆瓣应该是ip被封 ...

  3. Python笔记·第十一章—— 函数 (二) 装饰器

    一 为何要用装饰器 有的时候写完一段代码,过段时间需要对它进行升级.添加一些新功能,但是如果要直接修改原来的代码会影响其他人的调用,所以就需要一个不修改源代码且不修改原函数的调用方式的东西又能为原函数 ...

  4. 设计模式——外观模式(Facade)

    1. 概述     外观模式,我们通过外观的包装,使应用程序只能看到外观对象,而不会看到具体的细节对象,这样无疑会降低应用程序的复杂度,并且提高了程序的可维护性. 例子1:一个电源总开关可以控制四盏灯 ...

  5. Slf4j与其他日志系统兼容的使用

    java生产的各种框架(如spring等)里各个框架会使用不同的日志体系,多个不同日志在一个jvm里混搭会出现一定问题 ,这里梳理一下java体系里常见的日志框架,以SFL4j为中心介绍下跟各个日志框 ...

  6. c#发送get请求

    c#发送get请求爬取网页 关键点:在控制台中发送一个get请求,将响应的内容写入文件流中保存html格式 static void Main(string[] args) { string url = ...

  7. 关于sleep函数的一些问题和资料

    //================================================================================================ 2 ...

  8. js间隔几秒弹出一次联系框

    运行效果截图如下: 在线演示地址如下: http://demo.jb51.net/js/2015/js-3-sec-alert-dlg-codes/ 具体代码如下: <html> < ...

  9. Qt创建停靠悬浮窗口

    1.Qt实现窗口停靠和悬浮使用类QDockWidget,它有两个重要方法用来设置停靠特性以及停靠区域, dw1->setFeatures(QDockWidget::DockWidgetMovab ...

  10. 通过WebSocket实现一个简单的聊天室功能

    WebSocket WebSocket是一个协议,它是是基于TCP的一种新的网络协议,TCP协议是一种持续性的协议,和HTTP不同的是,它可以在服务器端主动向客户端推送消息.通过这个协议,可以在建立一 ...