第一周的内容,断断续续花了三天,把老师的视频又听了一遍,把老师的上课的实验都做了一遍。
以为自己都会了,其实在做的时候发现自己还是有问题的,要坚持下来。
-----------------------------------------------------------------------------------------------
第二周学习情况
1.Python模块
2.Pythin数据类型
3.数学运算
4.列表的使用
5.元祖和列表
6.字符串常用操作
7.字典使用
8.购物车实例
9.路径三级菜单实例
一、Python模块
在这里学习的模块内容比较少,模块三种途径得到,分别是自带、第三方、自己写。
自带--标准库,不需要安装直接可以导入的。第三方库需要下载安装才能用。
os模块,寻找路径,先在当前路径去寻找,然后寻找以下路径
['C:\\Users\\lenovo\\PycharmProjects\\untitled2', 'C:\\Users\\lenovo\\PycharmProjects\\untitled2', 'C:\\Python35\\python35.zip', 'C:\\Python35\\DLLs', 'C:\\Python35\\lib', 'C:\\Python35', 'C:\\Python35\\lib\\site-packages']
标准库文件寻找的路径,一般标准库在C:\Python35\\ib\,第三方库在C:\\Python35\\lib\\site-packages
导入模块三种方式:
1.import 模块名
2.from模块名 import函数名
3.import模块名 as新名字
当导入的模块路径报错,有两种方式修改,一、在全局变量中添加相对的路径。二、复制到默认的全局变量的文件夹下。
例如:
View Code
二、Python数据类型
1.数字:整型(int),长整型(long), 浮点型(float),复数型(complex)
整数:
32位系统中,存的数为2的32次方;64位系统中,存的数为2的64次方。
-------在python v2*版本中超过后会自动转换-------
typc(2**32)
>>><type 'int'>
typc(2**64)
>>><type 'long'>
-------在python v3*版本只会有int-------
typc(2**32)
>>><type 'int'>
typc(2**64)
>>><type 'int'>
浮点数
52.4E4 #52.4*10的4次方
>>>524000.0
2.布尔值:真或假 0或1
3.字符串:“……” / '……'
三、数学运算
1.算数运算:a=10;b=20
符 | 描述 | 实例 |
+ | 加 - 两个对象相加 | a + b 输出结果 30 |
- | 减 - 得到负数或是一个数减去另一个数 | a - b 输出结果 -10 |
* | 乘 - 两个数相乘或是返回一个被重复若干次的字符串 | a * b 输出结果 200 |
/ | 除 - x除以y | b / a 输出结果 2 |
% | 取模 - 返回除法的余数 | b % a 输出结果 0 |
** | 幂 - 返回x的y次幂 | a**b 为10的20次方, 输出结果 100000000000000000000 |
// | 取整除 - 返回商的整数部分 | 9//2 输出结果 4 , 9.0//2.0 输出结果 4.0 |
2.比较运算:a=10;b=20
运算符 | 描述 | 实例 |
== | 等于 - 比较对象是否相等 | (a == b) 返回 False。 |
!= | 不等于 - 比较两个对象是否不相等 | (a != b) 返回 true. |
<> | 不等于 - 比较两个对象是否不相等 | (a <> b) 返回 true。这个运算符类似 != 。 |
> | 大于 - 返回x是否大于y | (a > b) 返回 False。 |
< | 小于 - 返回x是否小于y。所有比较运算符返回1表示真,返回0表示假。 这分别与特殊的变量True和False等价。 注意,这些变量名的大写。 | (a < b) 返回 true。 |
>= | 大于等于 - 返回x是否大于等于y。 | (a >= b) 返回 False。 |
<= | 小于等于 - 返回x是否小于等于y。 | (a <= b) 返回 true。 |
3.赋值运算:a=10;b=20
运算符 | 描述 | 实例 |
= | 简单的赋值运算符 | c = a + b 将 a + b 的运算结果赋值为 c |
+= | 加法赋值运算符 | c += a 等效于 c = c + a |
-= | 减法赋值运算符 | c -= a 等效于 c = c - a |
*= | 乘法赋值运算符 | c *= a 等效于 c = c * a |
/= | 除法赋值运算符 | c /= a 等效于 c = c / a |
%= | 取模赋值运算符 | c %= a 等效于 c = c % a |
**= | 幂赋值运算符 | c **= a 等效于 c = c ** a |
//= | 取整除赋值运算符 | c //= a 等效于 c = c // a |
4.逻辑运算:a=10;b=20
运算符 | 逻辑表达式 | 描述 | 实例 |
and | x and y | 布尔"与" - 如果 x 为 False,x and y 返回 False,否则它返回 y 的计算值。 | (a and b) 返回 20。 |
or | x or y | 布尔"或" - 如果 x 是非 0,它返回 x 的值,否则它返回 y 的计算值。 | (a or b) 返回 10。 |
not | not x | 布尔"非" - 如果 x 为 True,返回 False 。如果 x 为 False,它返回 True。 | not(a and b) 返回 False |
5.……
更多学习可以查看http://www.runoob.com/python/python-operators.html(注意,此网页数学运算是Python v2.*版本的)
四、列表使用
列表是我们最以后最常用的数据类型之一,通过列表可以对数据实现最方便的存储、修改等操作。
定义列表
通过下标访问列表中的元素,下标从0开始计数。
1.列表切片取多个元素
name = [*:*] #顾头不顾尾
name = [::2] #隔一个取值
2.增、删、改、插
3.扩,复,统,序、取下标
五、元祖的使用
元组其实跟列表差不多,也是存一组数,只不是它一旦创建,便不能再修改,所以又叫只读列表。
它只有2个方法,一个是count,一个是index。统计和取下标
六、字符串常用操作
字符串对象是不可改变的,也就是说在创建一个字符串后,你不能把这个字符中的某一部分改变。
任何上面的函数改变了字符串后,都会返回一个新的字符串,原字串并没有变。
这部分内容很多,我很项找到一个表格能把常用的函数进行一一对应的说明,但是没有找到(肯定是有的只是我没找到),如是我自己编写了下面的表格。
函数 | 方法及描述 | 语法 |
capitalize() | 回首字母大写的副本,不改变原来的值 | x='hello,world' x.capitalize() -->'Hello,world' |
count() | 用于统计字符串里某个字符出现的次数。可选参数为在字符串搜索的开始与结束位置。空格也是字符 | x='hel lo love' x.count('l',0,4) #0到4下标位置 -->1 |
center(width,fillchar) | 回一个指定的宽度 width 居中的字符串,fillchar为填充的字符,默认为空格。 | a = "dd" |
endwith() | 检查字符串是否存在,指定检查范围,如果是,返回 True,否则返回 False. | a.endwith(‘d’) |
find() | 检测字符串中是否包含子字符串 ,如果指定范围,则检查是否包含在指定范围内,如果包含子字符串返回开始的索引值,否则返回-1。(没找到就返回-1) | a.find(‘a’) |
format() | 和%格式化功能一样,基本语法是通过 {} 和:来代替以前的%。format函数可以接受不限个参数,位置可以不按顺序。 | msg='Nname:{},age:{},sex:{}' print(msg.format('tom',18,'male')) -->Nname:tom,age:18,sex:male |
format_map() | 字典 | msg = "my name is {name}, and age is {age}" msg.format(age=25,name="sugod") msg.format_map({'name':'sugod','age':25}) |
isdigit() | 如果字符串只包含数字则返回 True 否则返回 False | salary = input(“输入会员卡余额:”) if salary.isdigit): salary = int(salary) |
istitle | 如果字符串是标题化的(单词首字母大写)则返回 True,否则返回 False | a = "Dd Rr" -->True |
join() | 以指定字符串作为分隔符,将括号中所有的元素(的字符串表示)合并为一个新的字符串 | str = "-" seq = ("a", "b", "c") # 字符串序列print (str.join( seq )) --------------------------------------- print (“-”.join(seq)) |
ljust()/rjust() | 指定字符补齐 |
|
lower()/upper() | 大/小写 | |
这个表我花了几天时间去想怎么写,内容实在太多,多到我无法和没信心去完成掉,所以我觉得应该写到这!
以后遇到不懂的就网上去查。
七、字典使用
字典是另一种可变容器模型,且可存储任意类型对象。
字典的每个键值(key=>value)对用冒号(:)分割,每个对之间用逗号(,)分割,整个字典包括在花括号({})中 ,格式如下所示:
dkey1value1, key2value2 }
注意:
键必须是唯一的,但值则不必。
值可以取任何数据类型,但键必须是不可变的,如字符串,数字或元组。
字典是无序的,无下标。按KEY值来记录
1.增,改,删
2.查找
3.多级字典嵌套
4.其他
values/keys只取values值或者KEY值
update合并/items字典转列表
八、购物车实例
九、路径三级菜单实例
---------第二周状态很不好,总结写了很多天才完成,比预计的要晚很多