php程序员学习python3学习第六天
1, dir(),help() 查看帮助
# -*- coding: utf-8 -*- temp = "xx" #通过dir()方法查看有哪些方法可以用 print(dir(temp)) #查看详细解释 通过help print(help(type(temp)))
2,加号在python内部调用的是__add__方法
n1 = 111 n2 = 222 print(n1+n2) #加号在python内部调用的是__add__方法 print(n1.__add__(n2))
3,获取数字用二进制表示的最短位数 bit_length()
a = 2
print(a.bit_length())
4,字符串常用方法及练习
5,在python3中默认编码是utf8 一个汉字是3个字节 一个字节8位 字节使用16进制表示的二进制 \x...,10进制表示方式,2进制表示方式 bytes 将字符转为字节
6,bin() 将10进制的数转换为2进制
name ="老王" for name_value in name: print(name_value) #打印单个字符 bytes_list = bytes(name_value,encoding='utf-8') #打印字节 字节默认16进制 print(bytes_list) #输出单个字节 for i in bytes_list: print(i,"\n") #默认单个字节使用10进制表示 print(bin(i)) #使用二进制输出
7,字符串到列表的转换,单个字符为一个元素
name ="老王" name_list = list(name) print(name_list)
8,元组转换为列表
#元组转换位列表 tuple_name = ("ab","bc","cd") name_lists = list(tuple_name) print(name_lists)
9,字典转换为列表
#字典转换为列表 dict_name = {"a1":"ab","a2":"bc"} #默认循环的是索引 print(list(dict_name)) #取值 print(list(dict_name.values())) #取items print(list(dict_name.items()))
10,将列表转换为字典 使用enumerate
#将列表转换为字典 ages = [22,33,44] #使用enumerate 自动循环列表的键 dict_ages = dict(enumerate(ages)) print(dict_ages)
11, 三元运算符
#-*-coding:utf-8-*- name = 'haha' if 1==1 else 'bbb' print(name)
12,try except 异常
13,函数传入动态参数 *args **kwargs 要同时写的时候必须把一个*的写在两个*的前边
# -*- coding:utf-8 -*- #动态参数练习 def f1(a): print(a,type(a)) #aa <class 'str'> f1('aa') #动态参数传递 一 def f2(*a): print(a,type(a)) f2("a") #将a转为了元组传递进去 f2('a','b',['c','d'],{"e":"f"}) #动态参数二 def f3(**a): #两个**表示值必须是key value形式传递的 print(a) f3(a=1,b=2) #动态参数整合,既接收动态参数1的形式也接受动态参数2的形式 def f4(*a,**aa): print(a,type(a)) print(aa,type(aa)) f4(1,2,3) #此时函数自动转为*a中 f4(a=1,b=2) #此时函数自动转为**a中 类型为字典形式的 f4(1,2,3, a=1,b=2) #函数可以自动识别
14,使用动态参数传递列表 ,传递元组也类似
#动态参数传递 一 def f2(*a): print(a,type(a)) li = [2,3,4,5] f2(li) #([2, 3, 4, 5],) <class 'tuple'> 将列表直接放入tuple中 f2(*li) #(2, 3, 4, 5) <class 'tuple'> 将列表中的元素分别放入元组中
15,使用动态参数传递字典
#动态参数二 def f3(**a): #两个**表示值必须是key value形式传递的 print(a) f3(a=1,b=2) dics = {"name":"aa","age":22} f3(dics) #此时会报错,因为接受的格式为key = value f3(**dics)
16,全局变量与局部变量,此处语法与pp有区别,在python中在方法内也可以读取方法外的全局变量,若修改全局变量,加上global调用即可,php中方法内的不可以直接读取,python中的全局变量使用大写,局部变量使用小写
#-*- coding:utf-8 -*- NAME = 'aaa' AGE = 22 def editName(): print(NAME) #读取全局变量 #若想修改全局变量,需要使用global进行获取 global NAME global AGE NAME = 'BBB' print(NAME) editName() print(NAME) print(AGE)
17,判断某个对象是不是某个类创建的,例如判断参数是否是字符串,列表,字典,元组等 isinstance()
# -*- coding:utf-8 -*- #判断某个对象是否是某个类创建的 str1 = 'asddsfds' print(isinstance(str1, str)) #str类 print(isinstance(str1, list)) print(isinstance(str1, tuple)) print(isinstance(str1, dict)) print(isinstance(str1,set)) set1 = {'a','s','f','g'} print(isinstance(set1,set))
18,python的传递赋值同php中一样,当变量赋给变量时,先将其内存地址赋给他,当被赋值的变量重新赋值时,再重新为其开辟一个新的内存地址
a = 'a' print(id(a)) #15623144 b = a print(id(b)) #15623144 b = 'aaaaa' print(id(b)) #17552808 print(id(a)) #15623144
-------------------------立码平天下------------------------------

浙公网安备 33010602011771号