python小笔记

文章目录

  • 1、从键盘输入并创建序列
  • 2、遍历序列
  • 3、修改、添加、删除序列
  • 3、结束程序
  • 4、图片的基本操作
  • 5、文件以及目录的基本操作

1、从键盘输入并创建序列

(1)列表

A=[i for i in input().split]

(2)元组

A=tuple(i for i in input().split())

(3)集合

A=set(i for i in input().split())

(4)字典

key=[i for i in input().split()]
ralue=[i for i in input().split()]
dic=dict(zip(key,ralue))

如果想创建输入指定数据类型的元组、列表、集合、字典就需要在 i 前面加上指定数据类型要不然系统会默认为str类型例如int(i)

2、遍历序列

(1)列表

for i in 列表名:#普通遍历
for i,j in enumeate(列表名):#带索引遍历列表 i为索引

(2)元组

for i in 元组名:
for i ,j in enumeate(元组名):

(3)字典

for i,j in 字典名.items():# i为键,j为值

(4)集合

for i in 集合名:

集合的运算:A|B并集运算;A&B交集运算;A-B差集运算

3、修改、添加、删除序列

(1)列表

列表名.extend()#添加元素
列表名[索引位置]="修改值"#修改元素
#当然修改和索引位置都可以键盘输入修改值((input())或者 指定数据类型(input())),索引位置(int(input))
del 列表名[索引位置]#删除元素

(2)元组

del 元组名 #删除元组
#修改元组
元组名=()#定义元组
元组名=()#对元组进行重新赋值
#元组必须相同
#添加元素
元组名=元组名+(添加元素)

(3)字典

字典名[key]=("")#添加元素,key为字典没有出现的key
字典名[key]=("")#修改元素,key为字典里已有的key
del字典名[key]=("")#删除

(4)集合(不可修改)

集合名.add()#添加元素,集合里没有的元素
集合名.remove(要删除的元素)#集合里已有的元素

3、结束程序

form sys import exit #加载模块
exit(1#结束程序

4、图片的基本操作

form PTL import Image #加载模块
import mateplotlib.pyplot as plt
img=Image.open(path)#打开图片 path为图片的路径
img.show #加载图片
plt.figure("")
ptl.imshow(img)
plt.show

如下代码:

from PIL import  Image#加载图片模块
import matplotlib.pyplot as plt
img = Image.open('D:/笔记截图/Camera Roll/TE1.jpg')#打开指定图片
img.show()
plt.figure("Happy")
plt.imshow(img)
plt.show()

5、文件以及目录的基本操作

(1)按行输入文件内容

endstr="end"#重新定义结束符
str=""  
with open('D:/python练习/Data/temp.txt','w') as f:#只写模式打开或创建文件
    f.write('')#清空或不加文件内容 
with open('D:/python练习/Data/temp.txt','a') as f:#只写模式以存在文件
    for line in iter(input,endstr) :#每行接收的东西 用了iter的哨兵模式
         str+= line+"\n"#换行
    f.write(str)#输入str的内容给文件

(2)读取文件

with open('D:/python练习/Data/temp.txt','r') as f:#打开指定文件
    f.seek(2)#移动文件指针到新的位置
    string = f.read(3)#读取字符3
    print(string)
with open('D:/python练习/Data/temp.txt','r') as f:#只读模式打开文件
     while i>0:
         l+=1#记录循环次数
         line=f.readline()#每次循环都读取一行
         if l==day+1:#循环次数等于当前是周几时
             print(day+1,line)#输出周几和输出文件第line行的内容
             i=-1#i置为-1结束循环     

例如一下代码:


import datetime#加载模块
endstr="end"#重新定义结束符
str=""   
with open('D:/python练习/Data/temp.txt','w') as f:#只写模式打开或创建文件
    f.write('')#清空或不加文件内容
print('输入"end"结束:')
with open('D:/python练习/Data/temp.txt','a') as f:#只写模式以存在文件
    for line in iter(input,endstr) :#每行接收的东西 用了iter的哨兵模式
         str+= line+"\n"#换行
    f.write(str)#输入str的内容给文件
day=datetime.datetime.now().weekday()#获取当前是周几
i=1
l=0
with open('D:/python练习/Data/temp.txt','r') as f:#只读模式打开文件
     while i>0:
         l+=1#记录循环次数
         line=f.readline()#每次循环都读取一行
         if l==day+1:#循环次数等于当前是周几时
             print(day+1,line)#输出周几和输出文件第line行的内容
             i=-1#i置为-1结束循环     
             
         

(3)创建、删除目录

import  os,shutil
if not os.path.exists('D:/python练习/Data/data/'):#检测指定目录是否存在
    print('路径不存在')
    os.mkdir('D:/python练习/Data/data')#不存在这创建目录单极目录
else:
    print('路径存在')
if not os.path.exists('D:/python练习/Data/data/ome/1'):#检测路径是否存在
    print('路径不存在')
    os.makedirs('D:/python练习/Data/data/ome/1')#创建多级目录
else:
    print('路径存在!')
if  os.path.exists('D:/python练习/Data/data/ome/1'):#如果路径不存在
    shutil.rmtree('D:/python练习/Data/data')#删除多级目录
    if not os.path.exists('D:/python练习/Data/data'):#检查路径是否存在
        print('已删除')
    print('已删除')  

(4)遍历目录

for root,dirs,flies in os.walk('D:\python练习',topdown=True):#遍历指定目录
    for name in dirs:#循环输出子目录
        print(os.path.join(root,name))
    for name in flies:#循环输出该目录下的所以文件
        print(os.path.join(root,name))

(4)删除文件与重命名文件

if os.path.exists('D:/python练习/Data/temp1.txt'):#判断该文件是否存在
    os.rename('D:/python练习/Data/temp1.txt','D:/python练习/Data/temp.txt')#更改文件名
else:
    print('文件不存在!')
if os.path.exists('D:/python练习/Data/temp.txt'):#判断该文件是否存在
    os.remove('D:/python练习/Data/temp.txt')#存在则调用函数删除
else:
    print('已删除')

(5)获取文件信息

file=os.stat("tmep01.py")#获取文件信息
print('文件完全路径:',os.path.abspath("temp01.py"))
print('索引号:',file.st_ino)
print('设备号:',file.st_dev)
print('文件大小:',forsize(file.st_size))
print('最后一次访问时间',fortime(file.st_atime))
print('最后一次修改时间:',fortime(file.st_mtime))
print('最后一次状态变化时间:',fortime(file.st_ctime))

(6)格式化文件与时间的操作

import time#加载时间模块
def fortime(longtime):#创建格式化时间的函数
    return time.strftime("%Y-%m-%d  %H:%M:%S" ,time.localtime(longtime) )
def forsize(daty):#创建格式化文件大小的函数
     for (i,j)in[(1024*1024*1024,"GB"),(1024*1024,"MB"),(1024,"KB")]:
         if daty>=i:#如果文件大小大于或等于1KB
             return "%.2f %s" %(daty*1.0/i,j)
         elif daty==1:#如果文件大小为1字节
             return"1字节"
         else:#处理小于1KB的情况
             datyf="%.2f"%(daty or 0)
     return(datyf[:-3]if datyf.endswith(".0")else datyf)+"字节"

目录的操作如下代码:

import time#加载时间模块
import  os,shutil
def fortime(longtime):#创建格式化时间的函数
    return time.strftime("%Y-%m-%d  %H:%M:%S" ,time.localtime(longtime) )
def forsize(daty):#创建格式化文件大小的函数
     for (i,j)in[(1024*1024*1024,"GB"),(1024*1024,"MB"),(1024,"KB")]:
         if daty>=i:#如果文件大小大于或等于1KB
             return "%.2f %s" %(daty*1.0/i,j)
         elif daty==1:#如果文件大小为1字节
             return"1字节"
         else:#处理小于1KB的情况
             datyf="%.2f"%(daty or 0)
     return(datyf[:-3]if datyf.endswith(".0")else datyf)+"字节"
if not os.path.exists('D:/python练习/Data/data/'):#检测指定目录是否存在
    print('路径不存在')
    os.mkdir('D:/python练习/Data/data')#不存在这创建目录单极目录
else:
    print('路径存在')
if not os.path.exists('D:/python练习/Data/data/ome/1'):#检测路径是否存在
    print('路径不存在')
    os.makedirs('D:/python练习/Data/data/ome/1')#创建多级目录
else:
    print('路径存在!')
if  os.path.exists('D:/python练习/Data/data/ome/1'):#如果路径不存在
    shutil.rmtree('D:/python练习/Data/data')#删除多级目录
    if not os.path.exists('D:/python练习/Data/data'):#检查路径是否存在
        print('已删除')
    print('已删除')  
for root,dirs,flies in os.walk('D:\python练习',topdown=True):#遍历指定目录
    for name in dirs:#循环输出子目录
        print(os.path.join(root,name))
    for name in flies:#循环输出该目录下的所以文件
        print(os.path.join(root,name))
if os.path.exists('D:/python练习/Data/temp1.txt'):#判断该文件是否存在
    os.rename('D:/python练习/Data/temp1.txt','D:/python练习/Data/temp.txt')#更改文件名
else:
    print('文件不存在!')
if os.path.exists('D:/python练习/Data/temp.txt'):#判断该文件是否存在
    os.remove('D:/python练习/Data/temp.txt')#存在则调用函数删除
else:
    print('已删除')
file=os.stat("tmep01.py")#获取文件信息
print('文件完全路径:',os.path.abspath("temp01.py"))
print('索引号:',file.st_ino)
print('设备号:',file.st_dev)
print('文件大小:',forsize(file.st_size))
print('最后一次访问时间',fortime(file.st_atime))
print('最后一次修改时间:',fortime(file.st_mtime))
print('最后一次状态变化时间:',fortime(file.st_ctime))

你可能感兴趣的:(学习分享,python,列表)