python-深入学习

本周学习了for循环、list集合、切片、文件读取、字符串方法、字典等内容

一、for 循环

     for i in range(循环次数):

        print()

     for 循环写不了死循环

二、list 数组

   方法包括以下:

   查

   print(new_names[9])#取值

   print(new_names.count('张'))#查询元素出现的次数

   print(new_names.index('张'))  #查询元素的下标,如果列表里面有重复的元素,那么就返回第一个出现的下标

   new_names.reverse()  #反转

   增

    new_name.append('王')  #从末尾给列表添加

    new_name.insert(1,'刘') #指定位置添加,如果指定的下标不存在,那么在末尾添加


new_names[0]='aoguoru'#改


del new_names[0]
new_names.pop(1)#默认删除最后一个元素,如果传入了下表,那就是删除指定的元素
new_names.remove('处长')#删除list中指定的元素
new_names.clear()#清空列表

nums.sort(reverse=True)#排序,默认是升序,写上reverse=True就是降序了
new_names[-1] #下标-1代表最后一个元素
new_names.extend(nums)#把后面list的元素加入到前面的list里面

多维数组
# others = [1,2,3,'niuhanyang','hahha'] #一维数组
   # nums = [1,2,3,4,['nhy','jmy','zyl']] #二维数组
# nums2 = [1,2,3,4,['nhy','jmy','zyl',[8,9]]] #三维数组
# print(nums2[-1][-1][-1])


三、切片
   # nums2=[1,2,3,4,5,6,7,8,9,10]
# 3,4,5,6,7
#0 1 2 3 4 5 6 7
# print(nums2[:7])#切片是顾头不顾尾
#如果是从头开始取的话,最前面的下标是可以不写的
# print(nums2[1:])#如果后面的下标不写,那么代表取到最后
# print(nums2[:])#都不写的话,相当于取原来list里面所有的值
# print(nums2[::])
# print(nums2[::-1])
#切片里面如果步长是负数的话,是从后面往前面开始取值的
#切片同样适用于字符串

   #可变变量
#list
#不可变变量
#字符串、元组
# infos = ('211.149.42.12','3306','root',123456)
# print(infos.count('3306'))#统计元组中元素出现的次数
# print(infos.index('3306'))#返回元组中元素的索引
# print(infos[-1])

四、读取文件
   #在python3里面只有这一种打开文件的方法,在python2里面还有一种方式file
#文件打开的时候有3种方式,默认是读的方式打开文件
#读 r,以读文件的方式开的时候,如果文件不存在会报错,如果你确定存在,而且不需要
#往文件里写的东西的时候,用r打开,只要是沾上r,文件不存在的时候就会报错
#写 w,以写方式打开的的话,文件不存在的话,会新建一个文件,文件的存在的话,会清空原来文件内容
#w+,写读模式,只要沾上w,就会清空以前的文件内容
#追加 a

方法有以下几种
文件.seek(0) --从第一个字符读取
文件.read() --读取文件所有内容,返回的是一个字符串
文件.readlines() --返回的是一个list,list每个元素是文件的每一行
文件.readline() --每次只取一行内容
文件.write(''jfjfh) --write是写内容,只能写字符串
文件.writelines(['ewddd ','1212']) --写的是一个list
文件.truncate() --清空文件内容,该方法之前,必须加seek()方法
文件.flush() --将缓冲区的数据立即写入文件

修改文件

修改文件都是使用文件替换的方式,如下列例子
import os
with open('1.txt') as f,open('2.txt','w') as f1
for line in f: --循环读取1.txt文件每一行内容
new_line=line.replace('我','me')
f1.write(new_line)
os.remove('1.txt') --删除1.txt文件
os.rename('2.txt','1.txt') --把2.txt文件名修改为1.txt

五、字符串方法

     print(file_name.startswith('.png'))     #是否以x开头

     print(file_name.endswith('.png'))     #是否以x结尾

      name.format(name='niuniu',age=18)      #这个是格式字符串
      print('122'.isdigit())         #是否是数字,是否是整数
      print(''.join(['hehe','haha','ee']))      #拼接字符串
         1、把list转成字符串
         2、把list里面每个元素连起来
      print('adbefF'.lower())       #变成小写
      print('adbefF'.upper())      #变成大写
      print(' mysql '.strip())    #去除空格
      print('mysql is db.'.replace('mysql', 'oracle'))         #替换字条串
      print('1+2+3+4'.split('+'))                    # 切割字符串,返回一个list
      print('1+2+3 1+2+3+4'.splitlines())      # 按照换行符分割,返回一个list

六、字典
  users = {"name":"niuhy","age":18}
#取值
# print(users['lanxia']) #如果key不存在的话,会报错
# print(users.get('lanxia')) #如果key不存在的话,会返回None
  #改
users["name"]='dasx'
users.update(name='haha')
#增
users['addr']='回龙观'
users.setdefault('sex','男')
#删
# del users['name']
# users.pop('sex')
# users.popitem()#随机删

  new_user_info= eval(f.read())#把字符串转成字典
 


 
 
 
原文地址:https://www.cnblogs.com/qqmb/p/7655206.html