一、文件处理

①打开文件  open(file, mode='r', buffering=-1, encoding=None)

 

python中没有strptime怎么解决 python的file中没有setting_字符串

 

 t和+:默认模式为'r'读取文本; 'w+'、'w+b'打开文件并清空,不存在则创建,a+也是不存在则创建; 'r+' 与 'r+b' 仅打开文件但不清空。

endoding=平台所使用的编码,或用locale.getpreferredencoding(False) 来获取本地编码。

buffering:缓冲区字节数,b模式下才可以是0; pycharm中file->settings->Editor->File Encodings设置编码方式。

 文件关闭模式:

try:                          官方推荐:
   f = open('test.txt', 'r')            with open('test.txt','r') as f:
   # do_something()                    # do_something()
finally:                        同时打开多个文件:
   f.close()                      with open('a.txt','r') as read_f, open('b.txt','w') as write_f:

FileNotFoundError,其他模式下会创建,其中w和w+模式下会清空已存在文件里的内容。

文件写入读出:

f.write(str)        2) f.writelines(str)  两者功能一致,str是什么就写入什么。

f.writelines("%s\n" % x for x in list)

 读取文件:

str=f.read()读取整个文本。

 2)list=f.readlines()或list=list(f)

str=f.readline()读取文本一行,文件尾时str='',可if not str: 或if str==''来判断。

文件位置

f.seek(int1,int2):移动int1个字节,int2取0、1或2,代表绝对、相对于当前、文尾三种情况。

 2)position = f.tell()

①print() 输出  print(*objects, sep=' ', end='\n', file=sys.stdout, flush=False) eg: 

 二、string常见操作

①状态判断 "string".islower()                               

  • islower()、isupper()、isdigit()  判断是否全为小写、大写、数字
  • isalpha()        是否为纯字母
  • isalnum()          是否为字母和数字 没有以外的字符
  • istitle()             每个单词是否大写开头
  • isspace()         是否只有空白字符(空格回车制表符)
  • startswith(str)     是否以某字符串开头
  • endswith(str)    

②字符转换

  • lower()、upper()                  逐字符转换为小写、大写
  • swapcase()                        字符串中大写转小写,小写转大写
  • casefold()                        字符串中所有大写字母转小写
  • title()                         字符串每个单词首字母大写,其他小写
  • capitalize()                      字符串首字母大写,其他小写

③修理和拆分  

  • strip ([substr])                       去掉字符串中的substr, 默认空白字符
  • lstrip (substr)                        只去左边
  • str1+str2、str1+=str2
  • split(substr)                         按substr拆分为list
  • splitlines ()                         按换行符拆分为list
  • partition(substr)                       从左侧按substr拆分为三部分, "xuchuan".partition("o") -> ("","","xuchuan")

④查询

eg: "xuchuan".find("u", 0, len("xuchuan"))==4

  • find(substr[, begin[, end]])                 在字符的[begin, end)段从左开始,查询最后一个匹配substr的下标
  • rfind(substr, begin, end)                     从右开始查, 未找到返回-1
  • index(substr, begin, end)                     查询第一个匹配substr的下标
  • count(substr)                            能匹配的substr的个数

⑤替换

  • replace(oldnew[, count])                   只替换前count次出现的old

三、编码和解码

  bytes数据类型是“不可变的二进制 字节数据”,能使用str类型大部分方法。

定义:vb = b'abXY'    # bytes类型

    vs = u'万水千山'   # Unicode字符串

编码:str -> bytes,  解码:bytes -> str

python中没有strptime怎么解决 python的file中没有setting_打开文件_02

 

最后、内置函数