模块初始

sys模块

import sys

sys.path #打印环境变量

sys.argv#打印该文件路径

#注意:该文件名字不能跟导入模块名字相同

os模块

import os

cmd_res = os.system("dir")#只执行system命令,不保存结果,返回一个值0代表执行成功,1代表执行失败

cmd_res = os.popen("dir).read()#执行system命令并且保存结果

os.mkdir("new_dir")#创建一个新的目录

第三方库模块

用户可以自己编写自己所需要的模块来进行调用

.pyc是什么

当python程序运行时,编译的结果则是保存在内存中的PyCodeObject中,PyCodeObject则是Python编译器真正编译成的结果,当Python程序结束运行时,Python解释器则将PyCodeObject写到pyc文件中。当python程序第二次运行时,首先程序会在硬盘中寻找pyc文件,如果找到则直接进去,否则就重复上面的过程。因此Python其实是一门先编译后解释的语言。

Python的三元运算

b = a if xxx else c

相当于c++中b = xxx?a:c

Python的str与bytes之间的转换

msg.encode(encoding = "utf-8")

msg,decode(encoding = "utf-8")

Python列表的学习

Python列表的格式

names = ["ZhangSan", "LiSi", "WangWu"]

Python的增

names.append("ZhaoLiu")加到后面

names.insert(1, "ls")把ls插到”LiSi”前面

Python的删

names.remove("ZhanSan")

del names[0]

names. pop[0] 默认为最后一个

Python的改

names[0] = "ls"

Python的查

names.index("ZhangSan")  该字符串所在的下表

names[0] 取第一个列表中的元素

names[0:2] --》names[:2] 取names[0], names[1]包括左边不包括右边

names[-1]取最后一个元素

names[-2:]取最后两个值

Python其他的函数

names.count("ZhangSan") 该字符串的数量

names.clear()清空列表

names.reverse()列表进行反转

names.sort()列表排序

extend用法

names2 = [1, 2, 3]

names.extend(names2)

names = ["ZhangSan", "LiSi", "WangWu", 1, 2, 3]

Python的copy函数

浅拷贝

names = ["a", "b", "c", "d"]

names2 = names.copy()

names[1] = "B"

-->names = ["a", "B", "c", "d"]

--> names2 = ["a", "b", "c", "d"]

names = ["a", "b", "c", [1, 2 ,3],  "d"]

names2 = names.copy()

names[3][0] = 10

-->names = ["a", "b", "c", [10, 2 ,3],  "d"]

-->names = ["a", "b", "c", [10, 2 ,3],  "d"]

由此可以看出copy为浅拷贝,只拷贝第一层,也就是说只拷贝了内存地址(引用)

深拷贝

import copy

names2 = copy.deepcopy(names)

列表的循环

names = ["a", "b", "c", "d"]

for i in names[0:-1:2]:

  print(i)

-->['a', ' c']

for k, v in enumerate(names):

  print(i, k)

-->0 a

1 b

2 c

3 d

Python元组的学习

元组跟列表差不多,只不过它一旦创建,便不能在进行修改,所以又叫只读列表

写法:names = ("a", "b", "c")

Python的字符串的一些操作

names = "my name is jason!"

names.capitalize()  -->My Name Is Jason! 首字符大写

names.count("a")   -->2 a的个数

names.center(20, "-") -->--------My Name Is Jason!----------打印20个字符不够用-来,字符串放中间

names.endswith("on!") -->True 字符串是否以什么结尾

names2 = "my \tname is jason!"

names2.expandtabs(tabsize = 20)  -->my   name is jason!

names.find("names")    -->4 查找第一个出现的字符串

names3 = "my name is{_name}, i am {_age}!"

names3 .format(_name= "Jason", _age= 24)

-->my name is Jason, i am 24!

names.isalnum()  是否是阿拉伯数字

names.isalpha()   是否是字符

names.isdecimal()    是否是十进制

names.isdigit()   是否是整数

names.isidentifier() 是否是合法字符

names.isnumeric() 是否是数字(只有数字,不能有.)

等等

Python的字典操作

python的数据类型key_value相当于lua中的table,c++中的map

字典的写法

info_dic = {

  "a":"广州",

  “b”:"香港",

  “c”:“澳门”,

}

字典的特性

dict是无序的,每次输出的结果都可能不一样

key必须是唯一的

info_dic = {

  "a":"广州",

  “b”:"香港",

  “c”:“澳门”,

}

字典的增

a["e"] = "北京 "

字典的删

del info_dic["a"]

info_dic.pop("a")

info_dic.popitem() 随机删除

字典的改

info_dic["a"] = "上海"

字典的查

info_dic["a"] 当不存在就会报错

info_dic.get("a”) 不存在就会返回None

字典可以多级嵌套,也可以嵌套列表

字典的其他函数用法

info_dic.values() -->["a", "b", "c"]

info_dic.keys() -->["广州", "香港", "澳门"]

info_dic.setdefault("d", "大连") 创建一个新的值,前提是字典中没有这个key,假如有的话就不用变

Python的基础学习(第二周)的更多相关文章

  1. 【吴恩达课后测验】Course 1 - 神经网络和深度学习 - 第二周测验【中英】

    [中英][吴恩达课后测验]Course 1 - 神经网络和深度学习 - 第二周测验 第2周测验 - 神经网络基础 神经元节点计算什么? [ ]神经元节点先计算激活函数,再计算线性函数(z = Wx + ...

  2. Python入门基础学习 三

    Python入门基础学习 三 数据类型 Python区分整型和浮点型依靠的是小数点,有小数点就是浮点型. e记法:e就是10的意思,是一种科学的计数法,15000=1.5e4 布尔类型是一种特殊的整形 ...

  3. Python入门基础学习 二

    Python入门基础学习 二 猜数字小游戏进阶版 修改建议: 猜错的时候程序可以给出提示,告诉用户猜测的数字偏大还是偏小: 没运行一次程序只能猜测一次,应该提供多次机会给用户猜测: 每次运行程序,答案 ...

  4. Python入门基础学习 一

    Python入门基础学习 一 Python下载及安装 下载地址:https://www.python.org/,选择最新的版本下载 稍等一会,安装完成. 简单语句 从idle启动Python:IDLE ...

  5. 201671010140. 2016-2017-2 《Java程序设计》java学习第二周

                                 学习第二周(Java基本程序设计结构)      这一周,着重学习了Java的简单程序设计实现及运行,通过自己操作,发现Java的程序语法大面 ...

  6. Mysql基础学习第二天

    Mysql基础学习第二天 函数 函数:是指一段可以直接被另一段程序调用的程序或代码. 字符串函数 数值函数 日期函数 流程函数 字符串函数 MySQL内置很多字符串函数,常用的几个如下: 函数 功能 ...

  7. Python入门基础学习(环境安装/字符串)

    Python基础学习笔记(一) 编译性语言与解释性语言: 编译性语言:读完代码再执行,一般会生成一个文件,如C语言会生成一个.h的文件给计算机执行 如:C,C++,C#,Java,Go 解释性语言:读 ...

  8. H5学习第二周

    怎么说,在各种感觉中h5学习的第二周已经过来了,先总结一下,感觉学习h5是一件让我爱恨交加的事,学会一些新的知识并把它成功运行出来的时候是非常激动和兴奋的,但是有时候搞不懂一个标签或者属性的时候,就有 ...

  9. Java学习第二周学习笔记

    20145307<Java程序设计>第二周学习总结 教材学习内容总结 Java语言中的很多基本语法都和C语言类似,以下Java中的基本语法 标识符 标识符是程序中自定义的一些名称. 由26 ...

随机推荐

  1. 记一次sqoop同步到mysql

    工作中需要用到将hive的数据导一份到mysql中,需求是这样的:hive每天会产生一份用户标签(tag)发生变化的结果表user_tag,这份结果同步到mysql中,并且保持一份全量表,存储当前用户 ...

  2. SuperMap iClient 查询成功后如何传递参数?

    一.iClient API文档中的接口描述 二.范例 //定义一个this对象 this.param = new SuperMap.LonLat(point.x, point.y); querySer ...

  3. Mac下安装virtualenv, 并在PyCharm中使用

    今天在安装一个leader写的package的时候,同事建议安装到虚拟环境中,再在PyCharm里使用该虚拟环境即可.此处记录下经过: 开发Python应用的时候,有时会遇到不同的Python应用依赖 ...

  4. c语言第一次作业——输入与输出格式

    一.PTA实验作业 1.温度转换 本题要求编写程序,计算华氏温度150°F对应的摄氏温度.计算公式:C=5×(F−32)/9,式中:C表示摄氏温度,F表示华氏温度,输出数据要求为整型. 1.实验代码 ...

  5. Week04-面向对象设计与继承

    1. 本周学习总结 1.1 写出你认为本周学习中比较重要的知识点关键词 is a关系 覆盖 Object 超级父类 继承 抽象类 多态 重载 static super private public p ...

  6. Linux下vim上编辑实现进度条

    1.效果展示: 进度条,先来看一个效果: 这是进度结果,模拟实现了进度条的前进.百分比的现实.以及稍微的动画特效. 2.原理描述: 因为Linux系统下的输出有缓存,如果及时刷新显示,就可以得到我们想 ...

  7. Python 线程复习

    修改全局变量,设立flag来避免线程间数据冲突,低效率版 from threading import Thread import time g_num=0 g_flag = 1 def test1() ...

  8. python的dir、help、str用法

    当你给dir()提供一个模块名字时,它返回在那个模块中定义的名字的列表.当没有为其提供参数时, 它返回当前模块中定义的名字的列表.dir() 函数使用举例: 1 2 3 4 5 6 >>& ...

  9. 自定义SpringBoot启动banner

    序: springboot启动的时候会有一个启动logo似的东西,如图,这个logo似的东西叫做banner,本文小计修改此banner显示与关闭banner.没什么用,有兴趣可以玩玩-- 正文: 自 ...

  10. emqtt 试用(三)mqtt 知识

    一.概念 MQTT 协议客户端库: https://github.com/mqtt/mqtt.github.io/wiki/libraries 例如,mosquitto_sub/pub 命令行发布订阅 ...