Python的基础学习(第二周)
模块初始
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的基础学习(第二周)的更多相关文章
- 【吴恩达课后测验】Course 1 - 神经网络和深度学习 - 第二周测验【中英】
[中英][吴恩达课后测验]Course 1 - 神经网络和深度学习 - 第二周测验 第2周测验 - 神经网络基础 神经元节点计算什么? [ ]神经元节点先计算激活函数,再计算线性函数(z = Wx + ...
- Python入门基础学习 三
Python入门基础学习 三 数据类型 Python区分整型和浮点型依靠的是小数点,有小数点就是浮点型. e记法:e就是10的意思,是一种科学的计数法,15000=1.5e4 布尔类型是一种特殊的整形 ...
- Python入门基础学习 二
Python入门基础学习 二 猜数字小游戏进阶版 修改建议: 猜错的时候程序可以给出提示,告诉用户猜测的数字偏大还是偏小: 没运行一次程序只能猜测一次,应该提供多次机会给用户猜测: 每次运行程序,答案 ...
- Python入门基础学习 一
Python入门基础学习 一 Python下载及安装 下载地址:https://www.python.org/,选择最新的版本下载 稍等一会,安装完成. 简单语句 从idle启动Python:IDLE ...
- 201671010140. 2016-2017-2 《Java程序设计》java学习第二周
学习第二周(Java基本程序设计结构) 这一周,着重学习了Java的简单程序设计实现及运行,通过自己操作,发现Java的程序语法大面 ...
- Mysql基础学习第二天
Mysql基础学习第二天 函数 函数:是指一段可以直接被另一段程序调用的程序或代码. 字符串函数 数值函数 日期函数 流程函数 字符串函数 MySQL内置很多字符串函数,常用的几个如下: 函数 功能 ...
- Python入门基础学习(环境安装/字符串)
Python基础学习笔记(一) 编译性语言与解释性语言: 编译性语言:读完代码再执行,一般会生成一个文件,如C语言会生成一个.h的文件给计算机执行 如:C,C++,C#,Java,Go 解释性语言:读 ...
- H5学习第二周
怎么说,在各种感觉中h5学习的第二周已经过来了,先总结一下,感觉学习h5是一件让我爱恨交加的事,学会一些新的知识并把它成功运行出来的时候是非常激动和兴奋的,但是有时候搞不懂一个标签或者属性的时候,就有 ...
- Java学习第二周学习笔记
20145307<Java程序设计>第二周学习总结 教材学习内容总结 Java语言中的很多基本语法都和C语言类似,以下Java中的基本语法 标识符 标识符是程序中自定义的一些名称. 由26 ...
随机推荐
- 关闭系统邮件提醒:you hava a new mail(转)
有时候,在输入某些触及到系统安全或者内核方面的命令都会提醒你: You have new mail in /var/spool/mail/root 只需要在root 用户下,不设置邮件检测即可! #e ...
- VS2013创建Windows服务 || VS2015+Windows服务简易教程
转自:https://www.cnblogs.com/no27/p/4849123.htmlhttps://blog.csdn.net/ly416/article/details/78860522 V ...
- hibernate框架学习笔记1:搭建与测试
hibernate框架属于dao层,类似dbutils的作用,是一款ORM(对象关系映射)操作 使用hibernate框架好处是:操作数据库不需要写SQL语句,使用面向对象的方式完成 这里使用ecli ...
- 敏捷冲刺(Beta版本)
评分基准: 按时交 - 有分(计划安排-10分,敏捷冲刺-70分),检查的项目包括后文的三个个方面 冲刺计划安排(单独1篇博客,基本分5分,根据完成质量加分,原则上不超过满分10分) 七天的敏捷冲刺( ...
- 201621123057 《Java程序设计》第2周学习总结
一.本周学习总结 基本数据类型 char实质属于整型.boolean类型取值只有true和false两种. 引用数据类型 包装类:自动装箱 与 自动拆箱 数组:一维数组遍历数组用foreach循环:多 ...
- Beta冲刺Day2
项目进展 李明皇 今天解决的进度 优化了信息详情页的布局:日期显示,添加举报按钮等 优化了程序的数据传递逻辑 明天安排 程序运行逻辑的完善 林翔 今天解决的进度 实现微信端消息发布的插入数据库 明天安 ...
- V7000存储数据恢复_底层结构原理拆解及Mdisk磁盘掉线数据恢复方法
Storwize V7000(也就是我们常说的V7000)是新推出的一款中端存储系统,这款系统的定位虽然在中端,但是Storwize V7000提供有存储管理功能,这一功能以前只有高端存储才拥有(例如 ...
- HTML 样式设计
1.自动设置外边距 style="margin:auto auto;"
- WPF自学入门(十一)WPF MVVM模式Command命令
在WPF自学入门(十)WPF MVVM简单介绍中的示例似乎运行起来没有什么问题,也可以进行更新.但是这并不是我们使用MVVM的正确方式.正如上一篇文章中在开始说的,MVVM的目的是为了最大限度地降低了 ...
- LeetCode & Q169-Majority Element-Easy
Array Divide and Conquer Bit Manipulation Description: Given an array of size n, find the majority e ...