php程序员学python要多久_php程序员学习python3学习第二天

1,python中的模块分为标准,第三方,标准的为自带的,不需要安装直接import使用

2,python文件名不要和模块名相同

3,sys模块

#-*- coding:utf-8 -*-

importsysprint(sys.path) #打印环境变量

print(sys.argv) #打印脚本信息和相关传递参数

print(sys.argv[2]) #打印传递来的第三个参数的值

4,os模块

importos#与系统交互使用较多

os.system("dir") #输出到屏幕上,然后值就销毁

cmd_msg = os.system("dir")#print(cmd_msg) #此处cmd_msg的值是用来检测此命令执行是否成功 成功为0,非0为不成功

#若想将结果保存的话可以使用popen

cmd_mess = os.popen("dir").read()print(cmd_mess)#创建目录

os.mkdir("../day3")

5,python标准库在python_path下base文件夹下的Lib中,第三方库在site-packages

6,在命令行执行python文件时,先激活了python的解释器,告诉解释器要开始工作,在解释之前执行的第一件工作与java一样,进行编译。所以python也是一个先编译后解释的语言

7,python的PyCodeObject和pyc文件,PyCodeObject是Python编译器真正编译形成的结果,在python运行程序的时候编译的结果则是保存在位于内存中的PyCodeObject中,当Python程序运行结束时,python解释器将PyCodeObject写回到pyc文件中,当python第二次运行程序的时候首先程序会在硬盘中寻找pyc文件,如果找到则直接载入,否则就重复上面的过程,所以说pyc文件应该是PyCodeObject的一种持久化保存方式

8,python 字符串常用功能  移除空白  分割  长度  索引  切片

9,encode() decode() 字符串转换为二进制,二进制解为字符串

#-*-coding:utf-8 -*-

msg = "哈哈"

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

by= msg.encode(encoding="utf-8")print(by.decode(encoding="utf-8"))

10,列表的增删改查,切片等常用操作及函数

#-*- coding: utf-8 -*-

importcopy

names= ['a','b','c','a']print(names) #打印列表

print(names[0],names[1]) #打印其中的值

print(names[1:3]) #选取区间进行打印从1取到3 值为['b','c'],值也为列表 此即为切片

print(names[-1]) #取最后一个值

print(names[-3:]) #从倒数第三个开始取

print(names[:3]) #从0开始取,此时0可以省略

names.append("e") #往末尾推一个值

print(names)

names.insert(1,"o") #指定位置插入单元

print(names)

names[1] = "a" #修改值

print(names)

names.remove("a") #删除值,只能删除找到的第一个a

print(names)del names[0] #也是删除值,只能删除找到的第一个a

print(names)

names.pop()#默认不输入下标的话删除最后一个值

print(names)

names.pop(0)#指定位置进行删除

print(names)

index= names.index("a") #根据值查找索引

print(index)

names.append("a")print(names)

num= names.count("a") #统计某个值有几个

print(num)

names.sort()#按照ascii值进行排序

print(names)

names.reverse()#反转列表

print(names)

names2= [1,2,3,4]

names.extend(names2)#合并names2,同时保留names2

del names2 #删除变量

print(names)

names.extend(names)#合并自身

print(names)print(names[::2]) #步长切片隔一个取一次

names3=names.copy()

names[0]= 1

print(names,names3)

names= ['a','b',['c','d'],'e']

names3= names.copy() #copy为浅copy 只copy第一层

'''浅copy的实现方式

names3 = names.copy()

names3 = copy.copy(names)

names3 = names[:]

names3 = list(names)'''names[2][0] = 1

print(names,names3)

names= ['w','e',['q','a'],'s']

names4=copy.deepcopy(names)

names[2][0] = 1

print(names,names4)

names.clear()#清空列表

print(names)

11,列表的浅copy与深copy 深copy谨慎使用 浅copy 只可以赋值列表的第一层,用在两个同样的copy,改变其中一个信息时另一个一起改变

#-*-coding:utf-8-*-

importcopy

msg= ["name",['money',100]]

p1=msg.copy()

p2=msg.copy()#修改p1的值

p1[0] = "a"

print(p1,msg) #['a', ['money', 100]] ['name', ['money', 100]]

p2[0] = "b"

print(p1,p2,msg) #['a', ['money', 100]] ['b', ['money', 100]] ['name', ['money', 100]]

#有需求需要更改一个人钱的时候,另一个人的钱也需要同时发生变化,测试浅copy非常有用

p1[1][1] = 50

print(p1,p2,msg) #['a', ['money', 50]] ['b', ['money', 50]] ['name', ['money', 50]]

12,深copy import copy模块 deecopy()

13,元组合列表其实差不多,但是元组是只读列表,不可以增删改查,有两个方法index() count()

#-*-coding:utf-8 -*-

names= ('a','b','c')print(names)#只有两个方法count() index()

num = names.count('a')print(num)

index= names.index('c')print(index)

14,元组一般存储不变的信息,例如数据库连接信息等

15,isdigit() 检测值是否为字符串型的数字

16,enumerate() 将列表的索引和值一起输出

17,len() 计算列表长度

18,"\033[31;1m%s\033[" % 打印出来值具有颜色

19,exit()退出程序

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值