由于换了博客,第一篇没有在博客园写,写在了开源中国上,链接地址为http://my.oschina.net/u/254063/blog/719289,大家有兴趣可以看看

一, python 数据类型

1,数字

这就不具体解释了,数字中包含整数(int),浮点数(float),复数(complex)这三大类型

2,字符串

字符串就是这样,"hello world"

3,布尔型

和其它语言一样,布尔型就两个值,0和1,及表示true和false,布尔型一般应用在判断语句中

二,python 运算符

1,运算符介绍
    算数运算:

比较运算:

赋值运算:

逻辑运算:

成员运算:

身份运算:

位运算:

2,运算符优先级

三,python模块初识:

1,python的模块是指事先写好的一些代码做封装,然后再通过import 语句导入到python 脚本中,加以应用,从而避免了代码重复,另外也提高了开发效率。

python 导入模块示例

  1. import os
  2. print(os.getcwd())

2,os模块总结

(1),os.name()输出字符串指示正在使用的平台。如果是window 则用'nt'表示,对于Linux/Unix用户,它是'posix'。

(2),os.getcwd() 函数得到当前工作目录,即当前Python脚本工作的目录路径。

(3),os.listdir() 返回指定目录下的所有文件和目录名。

(4),os.remove() 删除一个文件。

(5),os.system() 运行shell命令。

(6),os.path.split() 函数返回一个路径的目录名和文件名。

3,system模块总结

(1),sys.path 查找模块所在目录的目录名列表。

(2),sys.argv 命令行的参数,包括脚本名称。

四,字符编码转换

下面一张图很好的解释了python中的字符编码转换,即从string 转换到二进制用encode,从二进制转换到string用decode,其实也可以理解为编码和解码,不过需要注意的是,在编码时要告诉编码函数自己现在的字符编码,解码时需要告诉自己要解到哪种字符编码

  1. name="ll1234file中"
  2. a=name.encode('utf-8')
    name=a.decode('utf-8')
  3. print(a)

五,python列表

1,列表是Python中最基本的数据结构。列表中的每个元素都分配一个数字 - 它的位置,或索引,第一个索引是0,第二个索引是1,依此类推。列表是可变的,即可以修改列表的内容

[a,b,c,d] 像这样的形式就是一个列表,其中a字符的位置或者说a字符的索引为0

2,列表的基本操作,

(1)读取列表的长度len()

  1. x=["name","back","file","head"]
  2. a=len(x)
  3. print(a)

(2)读取列表的值,修改列表的值

  1. x=["name","back","file","head"]
  2. a=x[0]
  3. print(a)
  4. x[1]="find"
  5. print(x)

(3)在列表中插入值,删除列表中的某个值

append方法是在列表的末尾插入字符,insert可指定位置插入,pop不加任何参数的时候默认删除最后一个值,有参数时,删除指定位置的值,其实append(),pop()是两个相反的操作,类似于如栈和出栈

  1. x=["name","back","file","head"]
  2. x.append("find")
  3. x.insert(1,"happy")
  4. x.remove("back")
  5. print(x)x.pop()
    print(x)
    x.pop(1)
    print(x)

(4)将两个列表合并

  1. x=["name","back","file","head"]
  2. y=["","",""]
  3. x.extend(y)
  4. print(x)

(5)统计列表中某个元素的数量,获取列表中某个元素的下标

  1. x=["name","back","file","head","name","name"]
  2. print(x.count("name"))
    3 print(x.index("name"))

(6)循环读取列表中的值

  1. x=["name","back","file","head","name","name"]
  2. for i in range(len(x)):
  3. print(x[i]

(7)列表的copy

  1. x=["name","back","file","head","name","name"]
  2. y=x.copy()
  3. print(y)

(8)深拷贝和浅拷贝

在python语言中,copy有两种方法,一种如上面代码,这属于浅拷贝,下面的例子就能看出浅拷贝的问题,我们可以看到当x列表中的["1","2"]元素,单独改变某个值得时候,y列表中对应的元素值也做了相应的修改,像这样的copy我们称之为浅拷贝

  1. x=["name","back","file",["",""],"name","name"]
  2. y=x.copy()
  3. x[3][0]=""
  4. print(x)
  5. print(y)

再来看看深拷贝,从结果中我们可以看出单独改变x中["1","2"]的某个元素的时候,y列表是不受任何影响的,这样的拷贝我们称之为深拷贝

  1. import copy
  2. x=["name","back","file",["",""],"name","name"]
  3. y=copy.deepcopy(x)
  4. x[3][0]=""
  5. print(x)
  6. print(y)

六,元组

1,元组是python中的另一种数据结构,元组是以()括起来的,元组的位置或者说是索引和列表的一样,都是从0开始的,元组和列表最大的不同在于,元组是不可变的,是不能被修改的     2,元组的基本操作

(1)统计元组中某个元素的数量

  1. x=("name","back","file","head","name","name")
  2. print(x.count("name"))

(2)求某个元素的索引,如果有重复元素,index的值取第一个元素的索引值

  1. x=("name","back","file","head","name","name")
  2. print(x.index("name"))

七,切片

先从原理上分析切片运算:list的切片,内部是调用__getitem__,__setitem__,__delitem__和slice函数。而slice函数又是和range()函数相关的。下面的一些列子展示了切片对列表或者元组的操作,x[2:4]表示从x列表的索引为2的元素读取,到索引为4的元素之前的范围,也就是索引为2,3的两个元素,并不包括索引为4的元素,y[::2]表示整个列表,已2为单位作为步长输出,也就是每隔1个位置输出该元素

  1. x=('','','','','',''),
  2. y=['','','','','','']
  3. print(x[2:4])
  4. print(y[::2])

切片中的范围也可以为负数,表示从列表或者元组的后面算起,输出相应位置的元素

x=('1','2','3','4','5','6')
y=['1','2','3','4','5','6']
print(x[-3:-1])
print(y[-5:-1:2])

八,字典

字典是python中的另外一种数据结构,它的形式是以{}封闭,里面包括key,value键值对,如{"name":"jack"},它的特性是无序的,而且key是唯一的,不可变的,例如{["name","number"]:"jack"} 像这样的形式就会报错,因为key为一个列表,列表是可变的

对于字典的操作方法,有如下,

(1) x.items()读取x字典中的所有值,x.keys()读取x字典中的所有key,x,get("name")获取字典中name这个key所对应的值,x["salary"]="800",再x字典中插入新的key,value,因为字典是无序的,像这种写法,最终打印出来x salary所对应的键值对,并不一定在最后一个位置

  1. x={"name":"jack","number":"","address":"beijing"}
  2. print(x.items())
  3. print(x.keys())
  4. print(x.get("name"))
  5. x["salary"]=""
  6. print(x)

(2) 删除字典中的某个键值,清空整个字典

  1. x={"name":"jack","number":"","address":"beijing"}
  2. x.pop("name")
  3. print(x)
  4. x.clear()
  5. print(x)

(3)修改字典中有个键值对的值,设置键值对的默认值x["name"]="alex",将字典中"name"原有的值jack修改为了alex。setdefault()方法为字典设置默认值

如果字典中本身包含这个键值对,那么setdefault()方法不会修改原来的键值对,如果字典中没有这个键值对,那么将会以新的键值对写入字典中。

  1. x={"name":"jack","number":"","address":"beijing"}
  2. x["name"]="alex"
  3. x.setdefault("name","chen")
  4. print(x)
  5. x.setdefault("salary","")
  6. print(x)

python 学习第二天的更多相关文章

  1. python学习第二讲,pythonIDE介绍以及配置使用

    目录 python学习第二讲,pythonIDE介绍以及配置使用 一丶集成开发环境IDE简介,以及配置 1.简介 2.PyCharm 介绍 3.pycharm 的安装 二丶IDE 开发Python,以 ...

  2. python学习第二次笔记

    python学习第二次记录 1.格式化输出 name = input('请输入姓名') age = input('请输入年龄') height = input('请输入身高') msg = " ...

  3. Python学习-第二天-字符串和常用数据结构

    Python学习-第二天-字符串和常用数据结构 字符串的基本操作 def main(): str1 = 'hello, world!' # 通过len函数计算字符串的长度 print(len(str1 ...

  4. python学习第二天 -----2019年4月17日

    第二周-第02章节-Python3.5-模块初识 #!/usr/bin/env python #-*- coding:utf-8 _*- """ @author:chen ...

  5. python学习第二天第一部分

    备注:写程序不能写重复性的代码 学习内容:数据类型.for循环.while循环.字符编码.文件处理 一.for循环 1.简单的for循环 for i in range(10): # 此处意思为:循环r ...

  6. Python学习第二节——基础知识

    # !/usr/bin/edv python    脚本语言的第一行,目的就是指出,你想要你的这个文件中的代码用什么可执行程序去运行它.# -*- coding:UTF-8 -*-    标明编码注释 ...

  7. Python 学习第二章

    本章内容 数据类型 数据运算 表达式 if ...else 语句 表达式 for 循环 表达式 while 循环 一.数据类型 在内存中存储的数据可以有多种类型. 在 Python 有五个标准的数据类 ...

  8. Python 学习 第二篇:数据类型(字符串)

    字符串是一个字符的.有序的.不可变的序列,用于存储基于文本的信息.字符串所包含的字符存在从左至右的位置顺序,不可以在原处(in-place)修改.Python没有C语言的字符和字符串之分,只有字符串. ...

  9. python学习第二天-基本数据类型常用方法

    1.直入主题 python中基本的数据类型有 数字(整形,长整形,浮点型,复数) 字符串 字节串:在介绍字符编码时介绍字节bytes类型 列表 元组 字典 集合 下面我们直接将以下面几个点进行学习 # ...

随机推荐

  1. 把代码搬到Git Hub 吧(一)

    作为码农的我们,应该都是知道Git Hub,因为git几乎是码农必备的技能啊,所以就不多介绍Git Hub了,直入主题,这篇博客主要讲解Git Hub网页端和客户端的操作. 网页端: 首页第一步自然是 ...

  2. Git 账户认证的一些问题

    Mac被水浇了之后,只好用Window 开发了.但是在往Github上提交代码出现了些问题. 1. 提交时总是出现弹出框提示账号认证 之前Mac没有出现过这问题,所以有些怀疑Windows开发环境不友 ...

  3. Appcan——Box

    Box架构 ub….. Box架构元素空间大小分配比例 ub-f……. Ub-f1,ub-f2,ub-f3……. Box架构元素垂直方向的位置排列 ub-ac,ub-ae… -webkit-box-a ...

  4. C和指针 第十五章 输入输出缓冲

    对于C,所有的I/O操作都只是简单的从程序移进或移出字节,这种字节流便成为流(stream),我们需要关心的只是创建正确的输出字节数据,以及正确的输入读取数据,特定的I/O设备细节都是对程序隐藏的. ...

  5. Python中两种处理错误方法的比较

    我所说的处理错误的方法,其实是try:,except和raise这两种. 首先抛出一个实例, dictt={'a':1,'b':2,'c':3} try: if dictt['d']>1: #字 ...

  6. iOS10 权限崩溃问题

    iOS10 权限崩溃问题 原文: http://blog.csdn.net/runleelrg/article/details/51673025 今天 手机升级了 iOS10 Beta,然后用正在开发 ...

  7. 数据库阿里连接池 druid配置详解

    http://blog.csdn.net/hj7jay/article/details/51686418 http://lj6684.iteye.com/blog/1770093 http://www ...

  8. awk命令详解

    搜索 纠正错误  添加实例 awk 文本和数据进行处理的编程语言 补充说明 awk 是一种编程语言,用于在linux/unix下对文本和数据进行处理.数据可以来自标准输入(stdin).一个或多个文件 ...

  9. C 调用redis缓冲

    下载 redis 文件, 进行编译 wget https://github.com/redis/hiredis/archive/master.zip 将其解压, 并编译 unzip -x  maste ...

  10. Bootstrap.css 中请求googleapis.com/css?family 备忘录

    问题描述: Web中引入bootstrap.css中头部有访问Google服务器的请求 @import url("//fonts.googleapis.com/css?family=Open ...