Python 第2周 - Python基础-模块\数据运算
内容
- 模块初识
- 数据运算
- bytes数据类型
- python数据类型
- 列表的使用
- 元组与购物车操作
- 购物车程序练习
- 字符串常用操作
- 字典的使用
- 三级菜单实例
- 本周作业-购物车优化
一、模块初识
Python 库分两种:标准库(不需要安装,直接导入就可以直接使用的库)、第三方库(必须安装才能使用如django)。注意:编写代码时,模块名字不要跟库名字相同。系统自带模块简单举例:
sys库:
1 | import sys |
2 | print ("sys.path") |
输出:
['D:\\python\\51CTO\\2day',
'D:\\python\\51CTO',
'C:\\Windows\\system32\\python27.zip',
'C:\\Python27\\DLLs',
'C:\\Python27\\lib',
'C:\\Python27\\lib\\plat-win',
'C:\\Python27\\lib\\lib-tk',
'C:\\Python27',
'C:\\Python27\\lib\\site-packages']
|
Python的第三方库会存放在site-packages目录下。
2、sys.argv 执行脚本时获取传递的参数:
1 | #!/usr/bin/env python |
2 | #--*-- coding:utf-8 --*-- |
3 | import sys |
4 | print (sys.argv[3]) #取列表中的第三个数 |
输出:
执行脚本:
qing
os库:
1、调用系统命令os.system("dir")
import os |
print (os.system("dir")) |
# 执行命令,结果直接输出,不保存结果。结果出乱码
2、使用另外一个模块调取使用:os.popen
1 | import os |
2 | cmd_res = os.popen("dir").read() # os.popen会把读取的信息写到内存里面,read()重新把内存里面的信息读取出来 |
3 | print (cmd_res) |
pycharm 输出结果,中文不显示乱码了。
3、os.mkdir 模块
import os |
os.mkdir("new_dir_test") #会在当前的目录下,创建一个新目录 |
自己写个简单模块:
简单的login登陆判断,模块如下:
#vim login.py
#Author:ChenChangQing
_username = "chen"
输出:
导入login.py
#vim login1.py (注意,与login.py同级目录下导入login模块)
import login
执行脚本:python login1.py
输出:
简述Python的运行过程(摘录)
两个概念,PyCodeObject和pyc文件。
我们在硬盘上看到的pyc自然不必多说,而其实PyCodeObject则是Python编译器真正编译成的结果。我们先简单知道就可以了,继续向下看。
当python程序运行时,编译的结果则是保存在位于内存中的PyCodeObject中,当Python程序运行结束时,Python解释器则将PyCodeObject写回到pyc文件中。
当python程序第二次运行时,首先程序会在硬盘中寻找pyc文件,如果找到,则直接载入,否则就重复上面的过程。
所以我们应该这样来定位PyCodeObject和pyc文件,我们说pyc文件其实是PyCodeObject的一种持久化保存方式。
二、python 数据运算
1 、Python 算术运算
1 #Author:ChenChangQing 2 3 a = 10 4 b = 20 5 c = 3 6 7 #相加 + 8 d = a + b 9 print ("1 - d 的值为:",d) 10 11 #相减 - 12 d = b - a 13 print ("2 - d 的值为:",d) 14 15 #相乘 * 16 d = a*b 17 print ("3 - d 的值为:",d) 18 19 #相除 / 20 d = int(b/a) 21 print ("4 - d 的值为:",d) #取整数 22 print ("4 - d 的值为:",b/a) #直接打印浮点 23 24 #取余数 % 25 d = a % c 26 print ("5 - d 的值为:",d) 27 28 #幂次方 ** 29 d = c**3 30 print ("6 - d 的值为:",d) 31 32 #取整数 33 d = a//3 34 print ("7 - d 的值为:",d) 35 36 输出 37 38 1 - d 的值为: 30 39 2 - d 的值为: 10 40 3 - d 的值为: 200 41 4 - d 的值为: 2 42 4 - d 的值为: 2.0 43 5 - d 的值为: 1 44 6 - d 的值为: 27 45 7 - d 的值为: 3
数字运算
2、Python 比较运算(关系型运算)
举例:
1 a = 10 2 b = 20 3 4 #判断a与b相等 5 if a == b: 6 print ("1 :a与b相等") 7 else: 8 print ("1 :a与b不相等") 9 10 #判断a与b不相等 11 if a != b: 12 print ("2 :a与不相等") 13 else: 14 print ("2 :a与b相等") 15 16 #判断a 大于 b 17 if a > b: 18 print ("3 :a大于b") 19 else: 20 print ("3 :a小于b") 21 22 #判断a 小于 b 23 if a < b: 24 print ("4 :a小于b") 25 else: 26 print ("4 :a大于b") 27 28 #判断a 大于等于 b 29 if a >= b: 30 print ("5 :a大于等于b") 31 else: 32 print ("5 :a小于b") 33 34 #判断a 大于等于 b 35 if a >= b: 36 print ("6 :a大于等于b") 37 else: 38 print ("6 :a小于b") 39 40 #判断a 小于等于 b 41 if a <= b: 42 print ("7 :a小于等于b") 43 else: 44 print ("7 :a大于b") 45 46 输出: 47 1 :a与b不相等 48 2 :a与不相等 49 3 :a小于b 50 4 :a小于b 51 4 :a小于b 52 4 :a小于b 53 4 :a小于等于b
关系运算
3、Python 赋值运算
举例:
1 #把ab值的和赋给C 2 a = 10 3 b = 20 4 c = 0 5 6 c = a + b 7 print ("1 - c 的值:" ,c) 8 9 #+=的用法 10 a = 10 11 b = 20 12 c = 0 13 14 c += a #等同于 c = c+a 15 print ("2 - c 的值:" ,c) 16 17 #-=的用户 18 a = 10 19 b = 20 20 c = 30 21 22 c -= a #等同于 c = c - a 23 print ("3 - c 的值:" ,c) 24 25 #*= 的用法 26 a = 10 27 b = 20 28 c = 3 29 30 c *= a #等同于 c = c * a 31 print ("4 - c 的值:" ,c) 32 33 #/= 的用法 34 a = 10 35 b = 20 36 c = 5 37 38 c /= a #等同于 c = c / a 39 print ("5 - c 的值:" ,c) 40 41 42 #%= 的用法 43 a = 10 44 b = 20 45 c = 3 46 47 c %= a #等同于 c = c % a 48 print ("6 - c 的值:" ,c) 49 50 #**= 的用法 51 a = 10 52 b = 20 53 c = 2 54 55 c **= a #等同于 c = c**a 56 print ("7 - c 的值:" ,c) 57 58 #//= 的用法 59 a = 10 60 b = 20 61 c = 50 62 63 c //= a #等同于 c = c//a 64 print ("8 - c 的值:" ,c) 65 66 输出: 67 1 - c 的值: 30 68 2 - c 的值: 10 69 3 - c 的值: 20 70 4 - c 的值: 30 71 5 - c 的值: 0.5 72 6 - c 的值: 3 73 7 - c 的值: 1024 74 8 - c 的值: 5
赋值运算
4、Python 逻辑运算
举例:
1 #Author:ChenChangQing 2 3 a = 10 4 b = 20 5 c = 0 6 7 if a and b: #a与b的数值其中有一个为0,则为假 8 print ("1:a为真,b为真,则为真") 9 else: 10 print ("1:否则为假") 11 12 if a or c: 13 print ("2:a为真,b为真,或其中一个为真,则为真") 14 else: 15 print ("2:变量a 、c 都不为真") 16 17 #not 逆向理解:当a为真时,返回假;当a假时,则返回真。。C = 0 为假 18 if not c: 19 print ("3:true") 20 else: 21 print ("3:fales") 22 输出: 23 1:a为真,b为真,则为真 24 2:a为真,b为真,或其中一个为真,则为真 25 3:true
5、python 成员运算
Python还支持成员运算符,测试实例中包含了一系列的成员,包括字符串,列表或元组。
举例:
6、Python 身份运算
举例:
1 a = 10 2 b = 10 3 c = 5 4 d = (5,15,12,45) 5 6 if a is b: 7 print ("1 - a与b有相同的标示位") 8 9 if a is not c: 10 print ("2 - a与c没有相同的标示位") 11 12 if a is not d: 13 print ("3 - a 不在d 列表里面") 14 15 输出: 16 1 - a与b有相同的标示位 17 2 - a与c没有相同的标示位 18 3 - a 不在d 列表里面 19 20 备注:身份运算,个人理解更多的是交集跟非交集合之间的运算。
身份运算
is 与 == 区别:
is 用于判断两个变量引用对象是否为同一个, == 用于判断引用变量的值是否相等
7、Python 运算符优先级
简单举例:
1 a = 35 2 b = 25 3 c = 15 4 d = 5 5 e = 0 6 7 f = (a + b) * c / d #( 30 * 15 ) / 5 8 print ("(a + b) * c / d 运算结果为:", f) 9 10 f = ((a + b) * c) / d # (30 * 15 ) / 5 11 print ("((a + b) * c) / d 运算结果为:", f) 12 13 f = (a + b) * (c / d); # (30) * (15/5) 14 print ("(a + b) * (c / d) 运算结果为:", f) 15 16 f = a + (b * c) / d; # 20 + (150/5) 17 print ("a + (b * c) / d 运算结果为:", f) 18 19 输出: 20 (a + b) * c / d 运算结果为: 180.0 21 ((a + b) * c) / d 运算结果为: 180.0 22 (a + b) * (c / d) 运算结果为: 180.0 23 a + (b * c) / d 运算结果为: 110.0
优先级运算
8、Python位运算符
按位运算符是把数字看作二进制来进行计算的。
根据数字与二进制的转换方法来计算:
网上摘录列子,可参考:
三、bytes数据类型
1、bytes数据类型
先看一下string和bytes的关系
1 msg = "很好" 2 3 print (msg) 4 print (msg.encode(encoding="utf8")) 5 6 输出: 7 很好 8 b'\xe5\xbe\x88\xe5\xa5\xbd'
View Code
音频、视频都是二进制文件,要变成读的字符编码,就需要设置到转码。
2、三元运算
语法:result
=
值
1
if
条件
else
值
2
理解过程:一条命令解决。三元运算,先看中间if的语句部分:
A 、IF中如果a 大于 b成立 ,则d = b, 否则d = c 。实际a = 1 ,b=5 ,a>b不成立。则d = c ,所以d 的值为 7 ;
B 、IF中如果a 小于 b成立 ,则d = b, 否则d = c 。实际a = 1 ,b=5 ,a<b成立。则d = b,所以d 的值为 5;
3、进制的理解
- 二进制,01
- 八进制,01234567
- 十进制,0123456789
- 十六进制,0123456789ABCDEF #A-F 表示 10-15的对应数字。
理解: 二进制到16进制转换 http://jingyan.baidu.com/album/47a29f24292608c0142399cb.html?picindex=1
转载于:https://www.cnblogs.com/chen170615/p/7183326.html
Python 第2周 - Python基础-模块\数据运算相关推荐
- 【计算机科学基础】数据运算
文章目录 逻辑运算 位层次上的逻辑运算 模式层次上的逻辑运算 移位运算 逻辑移位运算 算术移位运算 算术运算 逻辑运算和算术运算的区别 用来置位/复位/反转的二元运算 二进制补码整数的加法进位 算术移 ...
- python与数据思维基础笔记_Python小课笔记--Python基础:数据和函数(二)
截图来自Python小课 文|仟樱雪 在Python小课-1-2节中,已经学习了基础模块--数据--数据类型(整数.字符串),以及基础模块--变量,基础模块--函数(input函数.print函数). ...
- python的init方法在哪个模块_Python学习笔记(九)——Python _init_特殊方法和模块...
一.特殊方法 特殊方法就是形如_future_\_main_这类方法的统称. 1.特殊方法 #__init__构造方法 class FooBar: def __init__(self): #构造方法, ...
- 掉进悬崖的小白,捡到python基础秘籍,学习第一周——语法基础,小游戏,无脑循环
掉进悬崖的小白,捡到python基础秘籍,学习第一周--语法基础,小游戏,无脑循环 人生苦短,我用python 语言的种类: 语言的发展: 什么是python 搭建 Python开发环境: 集成开发环 ...
- python 南京大学_南京大学python课程系列笔记之python基础之第一周:走进python
1.1 python简介: 历史,特点,应用 1.2 第一个python程序: 1.输出: print(字符串) print(变量) 2.输入: varibale = input("mess ...
- 01 Python学习--第一周--开课介绍、数据类型、数据运算、表达式、循环、三元运算、对象基本概念...
模块一主要内容 开课介绍 python发展介绍 第一个python程序 变量 字符编码与二进制 字符编码的区别与介绍 用户交互程序 if else流程判断 while 循环 while 循环优化版本 ...
- Python基础第一周--Python语言家族
在这里插入图片描述 一.Python语言家族 1 Introduction 1.1 Python 简介 Python 是一个高层次的结合了解释性.编译性.互动性和面向对象的脚本语言. 简单来说,Pyt ...
- Python爬虫实战,requests+tqdm模块,爬取漫画数据(附源码)
前言 今天给大家介绍的是Python爬取漫画数据,在这里给需要的小伙伴们代码,并且给出一点小心得. 首先是爬取之前应该尽可能伪装成浏览器而不被识别出来是爬虫,基本的是加请求头,但是这样的纯文本数据爬取 ...
- python数据处理电脑配置_『大数据python计算机基础教学视频教程』入门学python需要什么配置的电脑...
x = 1 if x 4.2 1) else匹前的缩进相同且最接近的if 2) 改之前y=x 2行,之后是y=x 1先执行 第5题 代码还n = 1 while n <= 5: i = 1 wh ...
最新文章
- java期末考试试卷及答案文库_JAVA期末考试试卷及答案
- VS2010中的新特点(上)
- C++建立动态二维数组
- treeview递归
- SpringBoot 应用程序启动过程探秘
- linux 下tomcat服务每天定时启动
- 转:ffmpeg编码h264
- 【校招VIP】测试脚本语言之系统状态(内存、网络)
- 对数似然值 matlab,matlab aic准则 怎么计算对数似然值
- AndroidStudio制作登录和注册功能的实现,界面的布局介绍
- 推广引流方法有哪些方式,平台有哪些?各平台引流方法分析!
- 2.1 新版个人所得税计算
- HTML+CSS学习打卡第一周
- A graph auto-encoder model for miRNA-disease associations prediction 论文解析
- 核函数(Kernels)
- 线程分离pthread_detach、pthread_attr_setdetachstate (attr, PTHREAD_CREATE_DETACHED);
- Java练手项目实战——五子棋游戏实现思路及源码
- 计算机微格教学教案设计表,微格教学教案设计表模板
- 流行的Go语言web框架简介
- 通过左旋和右旋来实现搜索二叉树的自平衡
热门文章
- 解决h5py\_init_.py:26:FutureWarning: Conversion of the second argument of issubdtype from `float`^……
- php 数组存入mysql_PHP将数组存入数据库中的四种方式
- 200 ssl服务器证书无效_服务器证书无效网站显示异常怎么办?
- 计算机系统字的描述性定义,CTCS系统11CTCS系统描述定义
- 图文分析 OSPF 的特点
- obs多推流地址_抖音obs推流直播怎么操作,抖音直播推流地址如何获取?
- Jmeter之断言操作
- Linux+nfs配置开机启动,linux NFS配置:NFS开机自动启用及其原理
- ubutnu16.04搭建LAMP环境(搭建wordpress博客)
- c语言如何给阻塞函数加超时,在代码中写一个延时而不阻塞的函数方法,给大家的参考 - 单片机 -
电子工程世界-论坛 -
手机版...