由于以前处理数据用Matlab和C,最近要处理大量文本文件,用C写实在是太繁琐,鉴于Python的强大文本处理能力,以及其在Deep Learning上有着很大优势,本人打算从即日起学习Python,谨以此系列博客记录学习点滴。文中如有错误,还望大牛们指出!

Section 1:

本文是第一篇,当然也是基础,有了编程基础的我们都知道,学习一门语言什么最重要?当然先搞清楚数据类型和数据结构,有了这些,你才能去谈面向对象,才能去设计程序。

Python的数据类型比较简单:1.整数;2.长整数;3.浮点数;4.复数;5.字符串

注1:熟悉Matlab的筒靴们要注意,Python的虚数用j而不是i表示。

注2:Python 不接受只声明不定义的格式,例如:想声明一个变量,必需要附一个初始值。

注3:Python里没有char类型,但是有字符串就已经足够处理所有工作了。

对于运算符的优先级我想这个跟其他语言出入并不大,所以不再赘述。

Section 2:

下面对于新手最重要的:

缩进

对,Python对于缩进非常敏感,为什么呢?因为Python没有C语言那种具有语句块的分割符,例如{},也没有Matlab的for...end这种结束符,它只能以缩进判断一个语句块是否结束。

这对于定义函数,或者循环语句,判断语句都很重要。例如:

for i in range(1,5)

print i

这两句是要报错的,因为print i作为for循环内部的语句 没有缩进!

正确的写法是:

for i in rang(1,5)

print i

缩进一个空格或者一个Tab,这个区别在哪里我还没有发现,希望各位能够给我一点指教。

Section 3: Python 的数据结构

Python的数据结构包括:列表,元组,字典,序列

其中序列包括列表、元组和字符串

3.1列表

列表中元素的有序存储的,shopList=['banana','apple','orange'],可以对它进行排序shopList.sort(),那么其内容就变为shopList=['apple','banana','orange']。

3.2元组

元组是不可变的,即定义好了的元组不能更改其内容。元组的定义:array=('this','is','an','array')

3.3字典

字典是键和值对应存储的,可以添加和删除元素。dic={'key1':'first','key2':'second','key3':'third'}

添加元素:dic['key4']= 'fourth'

删除元素:del dic['key4']

需要注意的是字典以键值为主,抓住这一点。

3.4序列

序列提供两种操作符:索引和切片

其实这一点和matlab最为相似,Matlab中提取一个数组的下标从a:b的元素;arr=arr[a:b];

索引就更简单了。

注4:注意这些数据结构定义的符号,以免混淆。

Reference:简明Python教程 http://sebug.net/paper/python/

【新手学Python】一、基础篇的更多相关文章

  1. 小白学Docker之基础篇

    系列文章: 小白学Docker之基础篇 小白学Docker之Compose 小白学Docker之Swarm PS: 以下是个人作为新手小白学习docker的笔记总结 1. docker是什么 百科上的 ...

  2. python+selenium基础篇,切入切出frame

    1.首先制作一个html的文件,代码如下 <!DOCTYPE html> <html> <head> <title>Frame_test</tit ...

  3. 一起学Spring之基础篇

    本文主要讲解Spring的基础环境搭建以及演变由来,仅供学习分享使用,如有不足之处,还请指正. 什么是Spring ? Spring是一个开源框架,用来处理业务逻辑层和其他层之间的耦合问题.因此Spr ...

  4. 跟着ALEX 学python day2 基础2 模块 数据类型 运算符 列表 元组 字典 字符串的常用操作

    声明 : 文档内容学习于 http://www.cnblogs.com/xiaozhiqi/  模块初始: Python的强大之处在于他有非常丰富和强大的标准库和第三方库,几乎你想实现的任何功能都有相 ...

  5. Python ( 学习 基础篇第一部 )

    目录 注释 注释的分类 注释的注意点 变量 变量的概念 变量的声明 变量的命名 变量的交换 变量的缓存机制 常量 进制 进制的转换 原码 反码 补码 六大数据类型 Number 的四大类 字符串 st ...

  6. [python面向对象]--基础篇

    1.#类 #类就是一个模板,模板里可以包含多个函数,函数里实现一些功能 #定义一个类 class bar: def foo(self,agr): print(self,agr) obj = bar() ...

  7. Python学习——基础篇

    1.python的安装     python下载地址:https://www.python.org/downloads/     安装完成后,运行cmd.exe,输入python     如果出现“p ...

  8. python正则表达式基础篇

    1.正则表达式基础 1.1简单介绍 正则表达式并不是Python的一部分.正则表达式是用于处理字符串的强大工具,拥有自己独特的语法以及一个独立的处理引擎,效率上可能不如str自带的方法,但功能十分强大 ...

  9. 新手学python(1):解析XML与系统调用

    最近需要做一个项目,完成一批音乐的格式转换.由于之前并未学习过python,所以想借此机会学一下.在介绍自己的学习过程之前,先把项目简要描述一下.目前在一台服务器a上有几十万首原始的MP3音乐文件,现 ...

随机推荐

  1. Linux 命令行总结

    1.使用ln不加参数,会创建硬链接,如果要创建软连接,需要加-s 参数. # ln test1 test8 -rw-r--r-- root root Nov : test1 -rw-r--r-- ro ...

  2. UVA-11997 K Smallest Sums

    UVA - 11997 K Smallest Sums Time Limit: 1000MS   Memory Limit: Unknown   64bit IO Format: %lld & ...

  3. 第3月第11天 vs2005调试 ace编译

    1.vs2005调试 http://blog.csdn.net/u010797208/article/details/40452797 2.macbook ace编译 小坑: 源代码clockid_t ...

  4. ecshop编辑器FCKeditor修改成KindEditor编辑批量上传图片

    ecshop一直使用的编辑器是fck,这个不用多说,相信很多朋友用的很悲剧吧,特别是图片不能批量上传图片.     今天小编就分享一下怎么换掉fck,放上实用的kindeditor,最新ecshop版 ...

  5. Uva 2319

    理解:区域覆盖.假设该点在勘测半圆的边缘,求出与该点可在一个半圆的坐标范围l,r,然后,for 一次判断 #include<cstdio> #include<algorithm> ...

  6. IIS 输入地址 目录浏览

  7. $.prop()和$.attr() 区别用法

    都用于读取和设置DOM元素节点的属性 不同: $.attr()用于DOM元素本身的属性 $.prop()用于DOM节点对应的JS属性(源于DOM元素到JS对象的映射) 源于两者在jquery类库的实现 ...

  8. MongoDB_C_Driver使用教程(2)高级连接

    高级连接(Advanced Connection) 以下指南包含MongoDB配置的特定类型的信息. 简单的连接到独立服务器的示例,请参考MongoDB_C_Dirver使用教程. 要连接到启用身份验 ...

  9. 前端开发必备!Emmet语法

    使用方法 emmet的使用方法也非常简单,以sublime text为例,直接在编辑器中输入HTML或CSS的代码的缩写,然后按tab键就可以拓展为完整的代码片段.(如果与已有的快捷键有冲突的话,可以 ...

  10. java26

    1:网络编程(理解)    (1)网络编程:用Java语言实现计算机间数据的信息传递和资源共享    (2)网络编程模型    (3)网络编程的三要素        A:IP地址           ...