Python基础_day02

一、模块初识

   模块是一个包含你所定义的函数和变量的文件,后缀为.py 。模块可以从别的程序引入,用来使用该模块中的函数等功能。

  举例:引用sys标准库

import sys
print(“参数如下:”)
for i in sys.argv:
    print(i)
print(‘\n\nPython路径为:’,sys.path,’\n’)

  运行结果如下:

参数如下:
D:/pyProject/cz/blog/001.py


Python的路径为: ['D:\\pyProject\\cz\\blog', 'D:\\pyProject\\cz', 'C:\\Users\\陈展\\AppData\\Local\\Programs\\Python\\Python36-32\\python36.zip', 'C:\\Users\\陈展\\AppData\\Local\\Programs\\Python\\Python36-32\\DLLs', 'C:\\Users\\陈展\\AppData\\Local\\Programs\\Python\\Python36-32\\lib', 'C:\\Users\\陈展\\AppData\\Local\\Programs\\Python\\Python36-32', 'C:\\Users\\陈展\\AppData\\Local\\Programs\\Python\\Python36-32\\lib\\site-packages', 'D:\\Program Files\\JetBrains\\PyCharm 2017.3\\helpers\\pycharm_matplotlib_backend'] 

  import语句

    想使用某模块,要在程序开头使用import引入该模块。

    一个模块只会被引入一次,不管执行多少次import。

    Python解释器怎样查找到模块所在文件的?

      默认在当前目录下查找,找不到则在全局环境变量中查找。

   from...import...语句

    从模块中导入指定的部分到当前命名空间内。

from modelName import name1

  from...import*语句

    把模块中的所有内容都导入到当前命名空间内。

二、pyc相关

  python是一门先编译后解释的语言

  PyCodeObject和pyc

    PyCodeObject是python编译器编译后的结果。

    当python运行时,编译的结果则是保存在位于内存中的PyCodeObject中,当程序运行结束时,python解释器则将PyCodeObject写回到pyc文件中,当python第二次运行时,首先程序会在硬盘中寻找pyc文件,如果找到则直接载入,否则重复以上过程。

    综上所述,pyc文件其实是PyCodeObject的一种持久化保存方式。

三、python数据类型

  Python中,每个变量在使用前必须赋值,变量赋值以后才会被创建。

  在python中,变量就是变量,没有类型,所谓的类型是指内存中对象的类型。

数字

int(整型)

  long(长整型):python的长整数没有指定位宽

  float(浮点型)

  complex(复数)

布尔值

真或假

1或0

字符串

字符串拼接:

  python中的字符串在C语言中体现为是一个字符数组,每次创建字符串时,需要在内存中开辟一个连续的空间,

 并且一旦需要修改字符串的话,就需要再次开辟空间,+号每出现一次就会在内存中重新开辟一块空间。

  

四、python运算符

  python运算符有:算数运算符,比较运算符,赋值运算符,逻辑运算符,位运算符,成员运算符,身份运算符

  运算符的优先级

运算符描述
**指数 (最高优先级)
~ + -按位翻转, 一元加号和减号 (最后两个的方法名为 +@ 和 -@)
* / % //乘,除,取模和取整除
+ -加法减法
>> <<右移,左移运算符
&位 'AND'
^ |位运算符
<= < > >=比较运算符
<> == !=等于运算符
= %= /= //= -= += *= **=赋值运算符
is is not身份运算符
in not in成员运算符
not or and逻辑运算符

五、bytes数据类型

    二进制数据由bytes类型表示
    python3不会以任意隐式的方式混用str和bytes,不能拼接字符串和字节包,也无法在字节包里搜索字符串,反之亦然,也不能将字符串传入参数为字节包的函数,反之亦然。
    encode:编码
    decode:解码

六、列表

names=["别克","大众","奔驰","宝马"]
print(names)
print(names[0],names[2])
#切片
print(names[0:2])
print(names[-3:-1])
print(names[-2:])
#追加
names.append("奇瑞")
#指定位置
names.insert(1,"Havel")
#改
names[2]="五菱宏光"
#删除
names.remove("大众")
del names[2]
names.pop()#指定删除某个位置的值,默认删除最后一个

#查找值所在的位置
print(names.index("宝马"))
#反转
names.reverse()
#排序,按照ASCII码排序
names.sort()
#扩展
names2=[1,2,3,4]
names.extend(names2)
View Code

  深浅copy

import copy
copy.deepcopy()    #深复制
copy.copy()      #浅复制 

浅copy的几种方法
import copy
person=['name',['age',28]]
p1=copy.copy(person)
p2=person[:]
p3=list(person)

七、字典

  基本格式:

    key-value

    特点:

      字典是无序的,key必须是唯一,天生去重(重复)

    举例:

#key-value

info={
    'stu001':"chenzhan",
    'stu002':"zhanchen",
    'stu003':"heheda"
}
print(info["stu001"])
#修改,如果存在就修改,不存在就添加
info["stu001"]="陈展"
#删除
del info["stu001"]
#或者
info.pop("stu001")
#或者(随机删除)
info.popitem()

    转换成列表

b={
    'stu001':"111111",
    1:3,
    2:5
}
info.update(b)
print(info)
info.items()

    参考资料:

    循环方式:
#更加高效的循环
for i in info:
    print(i,info[i])

for k,v in info.items():
    print(k,v)
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值