Python_day2

homework:

'''

作业三用函数实现登录功能
1、让用户输入用户名与密码
2、校验用户名是否存在
3、用户名存在后检验密码是否正确,
   若正确打印"登录成功",
   否则打印"用户名或密码错误",
   并让用户重新输入。
4、用户密码输入错误超过三次则退出循环。

'''

def login():
    '''
    此函数登录功能
    :return:
    '''
    counts = 0
    while counts < 3:


        user_in = input('请输入用户名:').strip()
        with open('tututu.text', 'r', encoding='utf-8') as f:
            res = f.read()
        user_name = res.split(',')[0].split(':')[1]
        user_pwd = res.split(',')[1].split(':')[1]

        if user_in == user_name:
            pwd_in = input('请输入密码:').strip()
            if pwd_in == user_pwd:
                print('登录成功!!')
                break
            else:
                print('密码错误!请重新输入!')
        else:
            print('用户名不存在,请重新输入!')
        counts += 1

login()

 

今日上课内容:
数据类型剩余内置方法
#1.insert 插入
list1 = ['tutu',17,'male',5.0,9,'安徽']
list1.insert(2,'old boy')
print(list1)

#2.count 查看某个值的个数
list1 = ['tutu',17,'male',5.0,9,'安徽']
print(list1.count('tutu'))

#3.index() 查看某个值的索引
print(list1.index('安徽'),'--安徽')

#4.clear 清空列表的值
list1 = ['tutu',17,'male',5.0,9,'安徽']
list1.clear()
print(list1)

#copy
# 浅拷贝 将list1的内存地址浅拷贝赋值给list2
list1 = ['tutu',17,'male',5.0,9,'安徽']
list2 = list1.copy()
print(list2)

#将list1原地址直接赋给list3
list3 = list1

#深拷贝
from copy import deepcopy
list4 = deepcopy(list1)

#打印直接赋值的结果、深、浅拷贝
#浅拷贝:list1的列表中外值改变对其不影响
#但对list1中的可变类型进行修改则会随之改变值
#深拷贝:把list中的所有值拷贝到一个全新地址中,进而与list1完全隔开

#extend
list1 = [1,2,3]
list2 = [4,5,6]
list1.extend(list2)
print(list1)

#reverse
list1.reverse()
print(list1)

#sort排序
list3 = [1,6,2,84,3,843,5]
list3.sort()
print(list3)

#降序
list3.sort(reverse=True)
print(list3)

元祖

#小括号(),以逗号隔开存放多个值,且不可变
tuple1 = (1,2,3)
# print()

#按索引取值
#print(tuple1[2])

#切片
print(tuple1[0:6])

#步长
print(tuple1[0:6:2])

#长度
print(len(tuple1))

#成员运算 in & not in
print(1 in  tuple1)
print(1 not in tuple1)

#循环
for line in tuple1:
    print(line)

字典内置方法

#1.按照key取/存值
dict1 = {
     'name':'tutu','age':18,'age':'male','school':'安徽工程大学'}

#根据key取值
#print(dict1['school'])

#get()
# print(dict1.get('school','清华university'))
# print(dict1.get('sal','50000'))

#len
#print(len(dict1))

#in & not in
# print('name' in dict1)
# print('sal' in dict1)
# print('work' not in dict1)

集合

#集合类型(一般用于去重,无序)
#在大括号内,以逗号隔开,可存放多个值,但可默认去重
set1 = {1,2,3,4,1,2,3,4}
print(set1)

#集合是无序的
set1 = set()
set2 = {}

print(set1)
print(set2)

set2['name'] = 'tutu'
print(type(set2))

 

文件操作

#对文本操作
#open
#open(参数1:绝对路径/文件名,参数2:模式,参数3:指定字符编码)
#写文件
f = open(r'C:\Users\涂先生\PycharmProjects\untitled1\day02\文件名.txt',
         mode='wt',
         encoding='utf-8')
f.write('hello,tututu')
f.close()
#读文件
f = open(r'C:\Users\涂先生\PycharmProjects\untitled1\day02\文件名.txt',
    'r',
   encoding="utf-8")
res = f.read()
print(res)

#追加文件
f = open(r'C:\Users\涂先生\PycharmProjects\untitled1\day02\文件名.txt',
         'a',
         encoding='utf-8')
f.write('涂懿磊牛逼')
f.close()

文件上下文处理

#文件处理之上下文管理:with
#with会自带close()功能,会在文件处理完之后自动调用close()关闭

#写文件
# with open(r'C:\Users\涂先生\PycharmProjects\untitled1\day02\文件名11.txt',
#     'w',
#    encoding="utf-8")as f:
#     f.write('life is short ,u need python')#自动调用close()
#

#读文件
with open(r'C:\Users\涂先生\PycharmProjects\untitled1\day02\文件名11.txt',
    'r',
   encoding="utf-8")as f:
    f.read('life is short ,u need python')#自动调用close()

#追加文件
with open(r'C:\Users\涂先生\PycharmProjects\untitled1\day02\文件名11.txt',
          'a',
          encoding="utf-8")as f:
    f.write('life is short ,u need python')  # 自动调用close()

视频读写操作

# import requests 
# res = requests.get(
#    'http://uploads.5068.com/allimg/141028/1-14102QR118.jpg'
# )
# print(res.content)

#写入图片
# with open('路飞.jpg','wb') as f:
#     f.write(res.content)

#读取图片
# with open('路飞.jpg','rb') as f:
#     res = f.read()
#     print(res)

#文件拷贝操作
# with open('路飞.jpg','rb') as f,open('小路飞.jpg')as w:
#     res = f.read()
#     w.write(res)

#读写视频
# with open('视频文件.mp4','rb')as f, open('视频文件_copy.mp4','wb')as w:
#     res = f.read()
#     print(res)
#     w.write(res)

#with open('资料学习方法.mp4','rb')as f, open('资料_copy.mp4','wb')as  w:

#一行一行读取内容,一行一行写入,避免内存溢出
     # for line in f:
     #    w.write(li

函数基础

#1.什么是函数?
'''
1.什么是函数?
函数相当于工具

2.函数语法

def 函数名(参数1,参数2...):
    """
    函数声明
    """
    函数体代码(逻辑代码)
    return 返回值
'''

#注册功能

#先定义
def register():
    while True:

        #让用户输入用户名和密码:
        user = input('请输入用户名:').strip()#去空格
        pwd = input('请输入密码:').strip()
        re_ped = input('请再次输入密码:').strip()

        #判断两次输入密码是否一致

        if pwd == re_ped:
            # 格式化字符串三种方式

            # user_info = '用户名:%s,密码:%s'%(user,pwd)
            # user_info = '用户名:{},密码:{}'.format(user,pwd)

            #字符串前写一个f相当于调用format方法
            user_info = f'用户名:{user},密码:{pwd}'

            #把用户信息写入文件
            with open(f'{user}.text','w',encoding='utf-8')as f:
                f.write(user_info)
            break

        else:
            print('两次密码不一致,请重新输入!')

register()

'''
函数在定义阶段发生的事情:
1.先打开Python解释器
2.加载函数基础.py文件
3.Python解释器会帮我们检测py文件中语法,但只检测Python语法,不会执行函数体代码
'''

 

转载于:https://www.cnblogs.com/TuLie-cs/p/11010675.html

你可能感兴趣的:(python)