python基础四------完结(概念在下面,代码看不懂了再看)



# a_list = [1,2,3,4,5]
#
# print(a_list)

# 根据下标来删除列表中的元素
# 爬取的数据中 有个别的数据 是我们不想要的 那么我们就可以通过下标的方式来删除
# del a_list[2]
# print(a_list)


# b_list = [1,2,3,4,5]
# print(b_list)
# pop是删除列表中的最后一个元素
# b_list.pop()
#
# print(b_list)


c_list = [1,2,3,4,5]
print(c_list)

# 根据元素来删除列表中的数据
c_list.remove(3)
print(c_list)


#
# a_tuple = (1,2,3,4)
#
# print(a_tuple[0])
# print(a_tuple[1])

# 元组是不可以修改里面的内容的
# a_tuple[3] = 5
# print(a_tuple)

# a_list = [1,2,3,4]
#
# print(a_list[0])
#
# a_list[3] = 5
# print(a_list)
# 列表中的元素是可以修改的 而元组中的元素是不可以被修改



a_tuple = (5)

print(type(a_tuple))

# 当元组中只要一个元素的时候  那么他是整型数据
# 定义只有一个元素的元组,需要在唯一的元素后写一个逗号
b_tuple = (5,)
print(type(b_tuple))







s ='hello world'

# 在切片中直接写一个下标
print(s[0])

# 左闭右开区间   包含坐标的数据 不包含右边的数据
print(s[0:4])

# 是从起始的值开始  一直到末尾
print(s[1:])

# 是下标为0的索引的元素开始 一直到第二参数为止   遵循左闭右开区间
print(s[:4])

# hello  world
# 从下标为0的位置开始 到下标为6的位置结束  每次增长2个长度
print(s[0:6:2])



# 定义一个字典
person = {'name':'吴签','age':28}

# 访问person的name
# print(person['name'])
# print(person['age'])

# 使用[]的方式,获取字典中不存在的key的时候  会发生异常   keyerror
# print(person['sex'])

# 不能使用.的方式来访问字典的数据
# print(person.name)


# print(person.get('name'))
# print(person.get('age'))

# 使用.的方式,获取字典中不存在的key的时候  会返回None值
print(person.get('sex'))





person = {'name':'张三','age':18}


# 修改之前的字典
print(person)

# 修改name的值为法外狂徒
person['name'] = '法外狂徒'

# 修改之后的字典
print(person)



person = {'name':'老马'}

print(person)

# 给字典添加一个新的key value
# 如果使用变量名字['键'] = 数据时  这个键如果在字典中不存在  那么就会变成新增元素
person['age'] = 18

# 如果这个键在字典中存在 那么就会变成这个元素
person['name'] = '阿马'

print(person)



# del
#    (1) 删除字典中指定的某一个元素
person = {'name':'老马','age':18}

# 删除之前
# print(person)
#
# del person['age']
#
# # 删除之后
# print(person)

#   (2) 删除整个字典
# 删除之前
# print(person)
#
# del person
#
# # 删除之后
# print(person)


# clear
#   (3) 清空字典 但是保留字典对象
print(person)

# 清空指的是将字典中所有的数据 都删除掉  而保留字典的结构
person.clear()

print(person)



# 遍历--》就是数据一个一个的输出

person = {'name':'阿马','age':18,'sex':'男'}

# (1) 遍历字典的key
# 字典.keys() 方法 获取的字典中所有的key值  key是一个变量的名字 我们可以随便起
# for key in person.keys():
#     print(key)

# (2) 遍历字典的value
# 字典.values()方法  获取字典中所有的value值   value也是一个变量 我们可以随便命名
# for value in person.values():
#     print(value)

# (3) 遍历字典的key和value
# for key,value in person.items():
#     print(key,value)


# (4) 遍历字典的项/元素
for item in person.items():
    print(item)





# print('欢迎马大哥光临红浪漫')
# print('男宾2位')
# print('欢迎下次光临')
#
# print('欢迎马大哥光临红浪漫')
# print('男宾2位')
# print('欢迎下次光临')
#
# print('欢迎马大哥光临红浪漫')
# print('男宾2位')
# print('欢迎下次光临')
#
# print('欢迎马大哥光临红浪漫')
# print('男宾2位')
# print('欢迎下次光临')


# 很多重复的业务逻辑 重复出现的时候 我们可以使用函数

# 定义函数
def f1():
    print('欢迎马大哥光临红浪漫')
    print('男宾2位')
    print('欢迎下次光临')

# 调用函数
f1()

f1()





# 使用函数来计算1和2的和
# def sum():
#     a = 1
#     b = 2
#     c = a + b
#     print(c)
#
# sum()


def sum(a,b):
    c = a + b
    print(c)


# 位置参数   按照位置一一对应的关系来传递参数
sum(1,2)

sum(100,200)


# 关键字传参
sum(b = 200,a = 100)


# 定义函数的时候  sum(a,b)  我们称a 和 b 为形式参数  简称形参
# 调用函数的时候  sum(1,2) 我们称1 和 2 为实际参数  简称实参








# 返回值的关键字是return,存在函数中

# def buyIceCream():
#
#     return '冰激凌'
#
# # 使用一个变量来接受函数的返回值
# food = buyIceCream()
#
# print(food)

# 案例练习
# 定义一个函数 然后让函数计算两个数值的和  并且返回这个计算之后的结果

def sum(a,b):
    c = a + b
    return c

a = sum(123,456)

print(a)




# 局部变量:在函数的内部定义的变量  我们称之为局部变量
# 特点:其作用域范围是函数内部,而函数的外部是不可以使用

#
# def f1():
#     # 在函数内部定义的变量 我们叫做局部变量
#     a = 1
#     print(a)


# f1()
# print(a)


# 全局变量: 定义在函数外部的变量 我们称之为全局变量
# 特点:可以在函数的外部使用,也可以在函数的内部使用

a = 1

print(a)

def f1():
    print(a)

f1()

# 在满足条件的情况 要使用作用域最小的那个变量范围



# 创建一个test.txt文件
# open(文件的路径,模式)
# 模式:  w 可写
#       r 可读
# open('test.txt','w')


# 打开文件
# fp = open('test.txt','w')
# fp.write('hello world')

# 文件夹是不可以创建的  暂时需要手动创建
# fp = open('demo/text.txt','w')
# fp.write('hello shangguigu')

# 文件的关闭
fp = open('a.txt','w')
fp.write('hello')
fp.close()



# 写数据
# write方法

# fp = open('test.txt','a')
#
# fp.write('hello world,i am here\n' * 5)
#
# fp.close()

# 如果我再次来运行这段代码  会打印10次还是打印5呢?
# 如果文件存在 会先情况原来的数据 然后再写
# 我想在每一次执行之后都要追加数据
# 如果模式变为了a 那么就会执行追加的操作


# 读数据
fp = open('test.txt','r')
# 默认情况下 read是一字节一字节的读 效率比较低
# content = fp.read()
# print(content)

# readline是一行一行的读取  但是只能读取一行
# content = fp.readline()
# print(content)


# readlines可以按照行来读取  但是会将所有的数据都读取到 并且以一个列表的形式返回
# 而列表的元素 是一行一行的数据
content = fp.readlines()
print(content)



# fp = open('test.txt','w')
# # 默认情况我们只能将字符串写入到文件中
# fp.write('hello world')
#
# fp.close()


# fp = open('test.txt','w')
# # 默认情况下 对象是无法写入到文件中  如果想写入到文件 那么必须使用序列化操作
# name_list = ['zhangsan','lisi']
#
# fp.write(name_list)


# 序列化的2种方式
# dumps()
# (1)创建一个文件
# fp = open('test.txt','w')
#
# # (2)定义一个列表
# name_list = ['zs','ls']
#
# # 导入json模块到该文件中
# import json
# # 序列化
# # 将python对象 变成 json字符串
# # 我们在使用scrapy框架的时候  该框架会返回一个对象 我们要将对象写入到文件中 就要使用json.dumps
# names = json.dumps(name_list)
#
# # 将names写入到文件中
# fp.write(names)
# fp.close()





# dump
# 在将对象转换为字符串的同时,指定一个文件的对象 然后把转换后的字符串写入到这个文件里


# fp = open('text.txt','w')
# #
# # name_list = ['zs','ls']
# #
# # import json
# # # 相当于names = json.dumps(name_list) 和 fp.write(names)
# # json.dump(name_list,fp)
# #
# # fp.close()



# 反序列化
# 将json的字符串变成一个python对象

# fp = open('text.txt','r')
#
# content = fp.read()
#
# # 读取之后 是字符串类型的
# print(content)
# print(type(content))
#
# # loads
# import json
# # 将json字符串变成python对象
# result = json.loads(content)
# # 转换之后
# print(result)
# print(type(result))



# load

fp = open('text.txt','r')

import json

result = json.load(fp)

print(result)
print(type(result))

fp.close()



# fp = open('text.txt','r')
#
# fp.read()
#
# fp.close()
# 异常的格式
# try:
#     可能出现异常的代码
# except 异常的类型
#     友好的提示

try:
    fp = open('text.txt','r')
    fp.read()
except FileNotFoundError:
    print('系统正在升级,请稍后再试。。。')

python基础四------完结(概念在下面,代码看不懂了再看)_第1张图片

python基础四------完结(概念在下面,代码看不懂了再看)_第2张图片

python基础四------完结(概念在下面,代码看不懂了再看)_第3张图片

python基础四------完结(概念在下面,代码看不懂了再看)_第4张图片

python基础四------完结(概念在下面,代码看不懂了再看)_第5张图片

python基础四------完结(概念在下面,代码看不懂了再看)_第6张图片

目前掌握前3个就可以了

python基础四------完结(概念在下面,代码看不懂了再看)_第7张图片

python基础四------完结(概念在下面,代码看不懂了再看)_第8张图片

python基础四------完结(概念在下面,代码看不懂了再看)_第9张图片

python基础四------完结(概念在下面,代码看不懂了再看)_第10张图片

python基础四------完结(概念在下面,代码看不懂了再看)_第11张图片

python基础四------完结(概念在下面,代码看不懂了再看)_第12张图片

python基础四------完结(概念在下面,代码看不懂了再看)_第13张图片

python基础四------完结(概念在下面,代码看不懂了再看)_第14张图片

你可能感兴趣的:(python,开发语言)