学习python多的第二天

今天主要学习内容:

  1、常用数据类型及其内置方法

  2、文件处理

  3、函数

 

一、数据类型

  1、列表类型

    定义:在[]内,可以存放多个任意类型的值,并以逗号隔开。

  如:

    

#定义一个学生列表,可存放多个学生student = ['YuSheng','JieGuo','ChengZhang']print(student[1])

 

  优先掌握的操作:
            1)、按索引存取值(正向存取+反向存取):即可存也可以取
            2)、切片(顾头不顾尾,步长)
            3)、长度
            4)、成员运算in和not in
            5)、追加
            6)、删除
            7)、循环

#1、按索引取值(正向取+反向取):可存可取
#正向取
student_info = ['YangGuo',84,'male',['泡8','喝酒']] #取所有的爱好print(student_info[3]) #取第二个爱好print(student_info[3][1]) #反向取print(student_info[-2])
#2、切片(顾头不顾尾,步长)print(student_info[0:4:2])

#3、长度print(len(student_info))

#4、成员运算in和not inprint('YangGuo' in student_info)print('YangGuo' not in student_info)
#5、追加
#在student_info列表末尾追加一个值student_info.append('1997')print(student_info)

#6、删除
#删除列表索引为2的值del student_info[2]print(student_info)

#7、循环
for student in student_info:     print(student)

需要掌握的:
            1)、index
            2)、count
            3)、pop
            4)、remove
            5)、insert
            6)、extend

#需要掌握的
student_info = ['YangGuo',84,'male',['泡8','喝酒'],84]
#1、index获取列表中某个值的索引
print(student_info.index(84))

#2、count获取某个值的数量
print(student_info.count(84))

#3、取值,默认列表中最后一个值,类似删除
#若pop()括号中写了索引,则取索引对应的值
student_info.pop()
print(student_info)
#取出列表中索引为2的值,并赋值给sex
sex = student_info.pop(2)
print(sex)
print(student_info)

#4、移除
student_info.remove(84)
print(student_info)

name = student_info.remove('YangGuo')
print(name)
print(student_info)

#5、插入值
#在student_info索引为3的地方插入Like
student_info.insert(3,'Like')
print(student_info)

#6、extend合并列表
student_info1 = ['YangGuo',84,'male',['泡8','喝酒'],84]
student_info2 = ['YangYU',17,'female',['泡8','喝酒']]
student_info2全部插入到student_info1中去
student_info1.extend(student_info2)
print(student_info1)

  2、元组类型

      定义:
                在()内,可以存放多个任意类型的值,并以逗号隔开。
          注意:
                元组与列表不一样的是,只能在定义时初始化值,不能对其进行修改。
          优点:
                在内存中占用的资源比列表要小。

优先掌握的操作:
            1)、按索引存取值(正向存取+反向存取):只能取
            2)、切片(顾头不顾尾,步长)
            3)、长度
            4)、成员运算in和not in
         5)、循环

    

#元组定义:
tuplel = (1,2,3,'五','六') #tuplel((1,2,3,'五','六'))
print(tuplel)
#1、按索引取值(正向取+反向取):只能取
print(tuplel[2])

#2、切片(顾头不顾尾,步长)
从零开始切片到5-1,步长为3
 print(tuplel[0:5:2])

#3、长度
print(len(tuplel))

#4、成员运算in和not in
print(1 in tuplel)
print(1 not in tuplel)

#5、循环
for line in tuplel:
    print(line)
    print默认end参数是\n
        print(line,end=' ')

  3、字典类型  

     作用:
               在{}内,可存放多个值,以key-value存取,取值速度快。           定义:
               key必须是不可变类型,value可以是任意类型
#定义字典
dict1 = dict({'age' : 18 , 'name' : 'tank'})#dict1 = {'age' : 18 , 'name' : 'tank'}
print(dict1)
#取值,字典名加中括号,括号内写值对应的key
print(dict1['age'])

优先掌握的操作:

         1)、按key存储值;可存可取
            2)、长度
            3)、成员运算in和not in,只判断字典中的key
            4)、删除
            5)、键keys();值value;键值对items()
            6)、循环

#1、按key存储值;可存可取
#存一个level:9的值到dict1中去
dict1['level'] = 9
print(dict1)

#2、长度
print(len(dict1))

#3、成员运算in和not in,只判断字典中的key
print('name' in dict1)
print('name' not in dict1)

# 4、删除
del dict1['level']
print(dict1)  # {'age': 18, 'name': 'tank'}

#5、键keys();值value;键值对items()
#得到字典中所有的key
print(dict1.keys)
#得到字典中所有值value
print(dict1.values())
#得到字典中所有的items
print(dict.items)

#6、循环
for key in dict1:
     print(key)
     print(dict1[key])

字典中的一些取值方法:

  

#get
print(dict1.get('age'))

#[]取值
print(dict1['sex'])

#get取值
print(dict1.get('sex'))

#若找不到为其设置一个默认值
print(dict1.get('sex','male'))

关于可变类型和不可变类型:

  不可变类型:

     变量的值修改后,内存地址一定不一样。

      如:

        数字类型(int float),字符串类型(str),元组类型(tuple)

  可变类型:

    列表类型(list),字典类型(dict)

# 不可变类型
# int
number = 100
print(id(number))  # 1434810944
number = 111
print(id(number))  # 1434811296
# float
sal = 1.0
print(id(sal))  # 2771339842064
sal = 2.0
print(id(sal))  # 2771339841896

str1 = 'hello python!'
print(id(str1))  # 1975751484528
str2 = str1.replace('hello', 'like')
print(id(str2))  # 1975751484400


# 可变类型:
# 列表

list1 = [1, 2, 3]

list2 = list1
list1.append(4)

# list1与list2指向的是同一份内存地址
print(id(list1))
print(id(list2))
print(list1)
print(list2)

  3、 流程控制:

     if 判断:

          语法:
              if 判断条件:
                  # 若条件成立,则执行此处代码
                    逻辑代码               elif 判断条件:
                  # 若条件成立,则执行此处代码
                    逻辑代码               else:
                    # 若以上判断都不成立,则执行此处代码
                    逻辑代码
# 判断两数大小
x = 10
y = 20
z = 30
# 缩进快捷键,tab往右移动四个空格,shift + tab 往左移动四个空格
if x > y:
    print(x)

elif z > y:
    print(z)

else:
    print(y)

    

      while循环
          语法:
              while 条件判断:
                  # 成立执行此处
                    逻辑代码           break  # 跳出本层循环
          continue  # 结束本次循环,进入下一次循环
str1 = 'tank'
# while循环
while True:
     name = input('请输入猜测的字符: ').strip()
     if name == 'tank':
        print('tank success!')
             break
     print('请重新输入! ')

 

 
上一篇:python学习(day2)


下一篇:[PAT刷题记录]day 1