博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
python中的小知识点
阅读量:5275 次
发布时间:2019-06-14

本文共 3546 字,大约阅读时间需要 11 分钟。

1、想要获取当前时间需要使用time

  import time #引用time方法
  Now_time = time.strftime('%Y-%m-%d %H:%M:%S') #输出当前的时间,格式是固定的,输入结果为2017-06-08 21:21:33 2、在文件写入的时候,想在文件中加入空格或者换行的话,格式如下:   其中Now_time是定义的变量、nathing是函数中传入的参数,是可以加引号的,他们之间使用+号进行连接
  fl.write(Now_time+' '+nathing+'\n') 3、当将文件中的内容换为字典了之后,密码怎么判断跟输入的用户是不是一致  当文件中字典的存放格式如下:   因为每个key有两个值,并且又放在一个字典里,其中passwd是第二个字典里的key,所以查找时可继续使用字典取值的方式,注意要加引号,因为字典中的key是字符串,不加引号的话会作为变量进行查找了
{'luoluo': {'money': 5435, 'passwd': 234567}, 'admin': {'money': '12.12', 'passwd': '123456'}}
pwd == str(user_dic[username]['passwd']) 4、添加商品中判断价格为小数的情况,以下是判断为数字和小数的情况,其中包括正小数和负小数:---牛牛大神的杰作喔
2
3
4
5
6
7
8
9
10
11
12
13
14
15
def is_float(s):
        s = str(s)
        if s.count('.')==1:#判断小数点个数
            sl = s.split('.')#按照小数点进行分割
            left = sl[0]#小数点前面的
            right = sl[1]#小数点后面的
            if left.startswith('-') and left.count('-')==1 and right.isdigit():
                lleft = left.split('-')[1]#按照-分割,然后取负号后面的数字
                if lleft.isdigit():
                    return True
            elif left.isdigit() and right.isdigit():
                #判断是否为正小数
                return True
        return False
print(is_float('-98.9'))

5、文集以字典形式存储,删除文件内容的时候,需要先将指针移到最前面,并且清空之后才可以,再写入

if p_name in products_dic: #products_dic是存放产品的字典
products_dic.pop(p_name) #删除一个商品,现在的字典是更新的最新的     fp.seek(0) #将指针移到最前面     fp.truncate() #清空文件里的所有内容     fp.write(str(products_dic)) #将更新的最新的字典写到文件里     print('删除商品成功') 6、函数与函数之间是怎么处理的   如果函数没有传参的话,函数一定要有返回值,返回True或者False,在使用的时候,可以作为条件进行判断   如果函数有传参的数,那么其他函数使用的时候,可以直接调用函数,根据需要传入参数 eg:没有传参的话,有返回值
def login():     with open('users.txt') as fr:         fr.seek(0)         user_str = fr.read()         user_dic = eval(user_str)         if username in user_dic:             if pwd == str(user_dic[username]['passwd']):                 print("恭喜您登陆成功!")                 log("恭喜%s登陆成功!"%username)                 return True             else:                 print("输入的密码有误!")                 return False         else:             print("您输入的用户名不存在")             return False

eg:通过传入的参数,执行函数

import time def log(nathing):         fl=open('log.txt', 'a+')         Now_time = time.strftime('%Y-%m-%d %H:%M:%S')         fl.write(Now_time+' '+nathing+'\n')
log("商品%s删除成功!" % p_name)#调用时 7、通过字典,可以更便捷的调用多个函数
choice = input('1添加商品,2删除商品,3查询商品,4用户管理,5退出,请输入你的选择:').strip() def hh():     print('修改商品...') def cc():     print('添加商品...') def query():     print('查询商品。。。') def delete():     print('删除商品。。。') menu = {'1': hh,'2': cc,'3': query,'4': delete} if choice in menu:     menu[choice]() else:     print('请输入1-5之间的值!') 8、判断文件内容是不是空的:
choice  = input('1添加商品,2查询商品,3退出,请输入你的选择:').strip() fp = open('products.txt', 'a+') fp.seek(0) products_str = fp.read() # 这个是从文件里面读出来商品信息,是字符串 if len(products_str):     # 这里是判断文件内容是否为空的,如果不为空的话,长度就大于0,就是真     # 一旦走这就说明是有产品     products_dic = eval(products_str)     # 是把读出来商品信息转成字典 else:     # 走这里就说明是没有商品信息的     products_dic = {}  # 存放所有的商品 9、获取执行时输入的内容,并判断文件是否存在
#运行的时候要 python xxx.py hh.txt hehe haha import sys,os inputs = sys.argv # #存的是所有运行时候传进来的参数 # #它就是用来获取在用python命令运行python文件的时候,传入的参数 #1、判断用户输入的是不是够个数 if len(inputs)<4:     print('参数不够,至少需要3个参数,e.g: python xx.py xx.txt old_str new_str..') else:     file_name = inputs[1]     old_str = inputs[2]     new_str = inputs[3]     new_file_name = file_name+'.new'     if os.path.exists(file_name):#用它来判断文件是否存在         with open(file_name,encoding='gbk') as fr,open(new_file_name,'w') as fw:             for line in fr:                 res = line.replace(old_str,new_str)#替换之后的内容                 fw.write(res)         os.remove(file_name)         os.rename(new_file_name,file_name)     else:         print('文件不存在')

转载于:https://www.cnblogs.com/MLing/p/6965339.html

你可能感兴趣的文章