day 06

for + enumerate :遍历打印出索引

i,name=(0,"egon")
for i,name in enumerate(["egon","tom","jack"]):
print(i,name)

 

不可变类型:值改变,但是id也变,证明是产生了新值,原值是不可变类型。

x = 10
print(id(x))
x = 11
print(id(x))

 

可变类型:值改变,但是id不变,证明就是在改原值,原值是可变类型

l = [111,222,333]
print(id(l))
l[0] = 6666666
print(id(l))

 

数字类型

二、int基本使用

用途:记录年龄、个数号码等整数相关的

 

1、定义方式:

age = 18  # age = int(18)
print(type(age))

int数据类型转换:可以把纯数字组成的字符串转成整型

res = int("    18    ")
print(res,type(res))

 

2、常用操作+内置的方法

数字运算+比较运算

 

int 存一个值,不可变

 

二、float基本使用

1、用途:记录薪资、身高、体重等

 

2、定义方式:

salary = 3.1 # salary = float(3.1)

float数据类型转换:可以把小数组成的字符串转换成浮点型

res = float(111)
print(res,type(res))

res = float("   3.3   ")
print(res,type(res))

 

3、常用操作+内置的方法

存一个值 ,不可变

 

字符串类型

1、用途:记录描述性质的状态

 

2、定义方式:在" ",' ',"""  """,'''  '''内包含一串字符

 

注意:

1、上述引号定义出来的都是str类型,,没有区别

2、三引号可以存放多行字符串

3、引号的嵌套:外层双引号,内层只能用单引号

 

数据类型转换:str可以把任意类型数据转换成字符串类型

res = srt([1,2,3])
print(res,type(res))

 

转义符:\ ,r

file_path = r"D:\new\a.py

file_path = "D:\\new\\a.py

 

常用操作+内置的方法

1、按索引取值(正向取+反向取):只能取

msg = "hello world"
print(msg[0],type(msg[0])
print(msg[-1])

 

2、切片(顾头不顾尾,步长)

msg = "hello world"

res = msg[1:7]

res = msg[1:7:2]

res = msg[:]

res = msg[::-1]

 

3、长度len

msg = "hello world"

print(len(msg))

 

4、成员运算in和not in

msg = "hello world"

print("he" in msg)

print("he" not in msg)   # 推荐

print(not "he" in msg)

 

5、移除空白strip

msg = "   hello  "

res = msg.strip()

print(res)
print(msg


msg = "*******hello******"

print(msg)

print(msg.strip("*"))

msg = "+-*he*llo**%/*"

print(msg.strip("*+-/%"))

 

案例:

inp_name = input("username: ").strip()  # inp_name = "egon "
inp_pwd = input("password: ").strip()
if inp_name == "egon" and inp_pwd == "123":
    print('ok')
else:
    print('no')

 

6、切分split

msg = "111:123:333"

print(msg[0:4]

res = msg.split(":",1)

print(res)

 

 

1、strip,lstrip,rstrip

msg = "******holle*****"

print(msg.strip("*"))

print(msg.rstrip("*"))

print(msg.lstrip("*"))

 

2、lower、upper

msg = "aAbB"

print(msg.lower())

print(msg.upper())

 

3、startswith,endswith

msg = "gwj is ok"

print(msg.startswith("gwj"))

print(msg.startswith("wj))

print(msg.endswith("ok"))

 

4、format的三种用法

msg = "my name is %s my age is %s" %("gwj",18)

msg = "my name is {name} my age is {age}".format(age=18,name="gwj")

msg = "my name is {1} my age is {0}{0} {0}".format(18,"gwj")

 

补充

msg = "my name is {name} my age is {age}".format{**{"age":18,"name":"gwj")

msg = "my name is %{name}s my age is %{age}s".format{**{"age":18,"name":"gwj")


name = "gwj"

age = 18

print(f"my name is {name} my age is {age}")

 

5、split,split

msg = "123:321:132"

print(msg.split(":",1))

print(msg.rsplit(":",1))

 

6、join

msg = "111:222:333"

l = msg.split(":")

l=["312","111","555",44444]

print(l[0]+":"+l[1]+":"+l[2]+":"+l[3])

print(":".join(l))

 

7、replace

msg = 'gwj xxxx gwj yyy gwj'

print(msg.replace('gwj',"GWJ",-1))

print(msg.replace('gwj',"GWJ"))

msg = "**_+_***he llo***+-**"

print(msg.strip("*_+-").replace(" ",''))

 

8、isdiqit

num = input(">>>: ")  # num = "asfasdf"
if num.isdigit():
    num = int(num)
    print(num > 10)
else:
    print("必须输入数字,小垃圾")

 

列表类型

用途:按照位置存放多个任意类型的值

定义方式:在[]内用逗号分隔开多个任意类型的值

l = [11,22,33,"xxx",[11,22,33]]

print(tyoe(l))

 

list数据类型转换:把可以迭代的类型转成列表,可以被for循环遍历的类型都是可迭代的

 

常用的操作+内置的方法

1、按索引存取值(正向存取+反向取反):即可村也可取

l = [111,222,333]

print(id(l))

l[0] = 666

print(l)

print(id(l))

l = [111,222,333]

l[0] = 666

l[3] = 777    # 列表索引不能超出范围

 

2、切片(顾头不顾尾,步长)

l = [11,22,33,44,55,66,77,88,99]

res = l[1:7:2]

res = l[:]

res = l[::-1]

 

3、长度:len

print(len(["aaa",111,222]))

 

4、成员运算in和not in

print(111 in ["aaa",111,2222])

 

5、追加:append

l = [111,222,333]

l.append(444)

l.append(555)

print(l)

 

5.1、插入:insert

l = [111,222,333]

l.insert(1,666)

print(l)

 

6、删除

l = [111,222,333]

del l[0]

print(l)

 

指定元素删除:l.remove

res = l.remove(222)

print(l)

print(res)  #None

 

指定索引:l.pop

res = l.pop(1)

print(l)

print(res)

 

浅拷贝

l = [11,22,33,44,33,33,55]

new_l = l.copy

 

查找:index

l.index()

print(l.index(33))

 

计长度:len

print(len(l))

 

计数:count

l.count()

print(l.count(33))

 

清空:clear

l.clear()

print(l)

 

添加:extend添加单个元素,append追加到末尾

l.extend("hello")

l.append([1,2,3,])

 

倒序:reverse

l.reverse()

print(l)

 

倒序排列:sort

l.sort(reverse = True)

print(l)

 

 

存一个值or存多个值

有序or无序

可变or不可变(1、可变:值变,id不变。 可变==不可hash

       2、不可变:值变,id变)

 

posted @ 2020-12-23 08:59  gwj02  阅读(49)  评论(0)    收藏  举报