一.文本操作
- 打开读取文本 (查)
lock_file = open('username_lock.txt', 'r+') #r+ 读写
lock_list = lock_file.readlines()
print(lock_list)
lock_file.close() #记得关闭文件
相关方法:
#readlines() 方法
用于读取所有行(直到结束符 EOF)并返回列表,
该列表可以由 Python 的 for... in ... 结构进行处理。
2.遍历文本取每一行 (查)
for lock_line in lock_list: #遍历取每一行
lock_line = lock_line.strip()
strip() 方法
用于移除字符串头尾指定的字符(默认为空格或换行符)或字符序列。
注意:
该方法只能删除开头或是结尾的字符,不能删除中间部分的字符。
3.插入自字符串到文本 (增)
write() 方法
用于向文件中写入指定字符串。
f = open("demofile3.txt", "w")
f.write("Woops" + '\n') #文件末尾加一行
f.close()
二. 字符串操作
特性:不可修改
--------------------------------
删
--------------------------------
改
1.去掉字符串前后空格和空行
strip() 方法
用于移除字符串头尾指定的字符(默认为空格或换行符)或字符序列。
注意:
该方法只能删除开头或是结尾的字符,不能删除中间部分的字符。
#!/usr/bin/python
# -*- coding: UTF-8 -*-
str = "00000003210Runoob01230000000";
print str.strip( '0' ); # 去除首尾字符 0
str2 = " Runoob "; # 去除首尾空格
print str2.strip();
3abcrunoob3
--------------------------------
查
1. 字符串切片
split() 方法
通过指定分隔符对字符串进行切片,
如果第二个参数 num 有指定值,则分割为 num+1 个子字符串。
默认为所有的空字符,包括空格、换行(\n)、制表符(\t)等。
切割:
#!/usr/bin/python3
str = "this is string example....wow!!!"
print (str.split( )) # 以空格为分隔符
print (str.split('i',1)) # 以 i 为分隔符
print (str.split('w')) # 以 w 为分隔符
切片并且赋给变量:
for account_line in account_list:
username,password = account_line.strip().split()
print(username,password)
2.查询字符串长度
len() 方法返回对象(字符、列表、元组等)长度或项目个数。
>>>str = "runoob"
>>> len(str) # 字符串长度
6
---------------------------
判断
1. 判断字符串是否为数字
isdigit() 方法检测字符串是否只由数字组成。
#!/usr/bin/python3
str = "123456";
print (str.isdigit())
str = "Runoob example....wow!!!"
print (str.isdigit())
以上实例输出结果如下:
True
False
-------------------------------------
if not get_city.isdigit():
print('请输入一个数字索引号。')
字符串相关方法
# -*- coding: utf-8 -*-
# author : anthony
# version : python 3.6
name = "my \tname {name} and i am {year} old"
print(name.capitalize())
print(name.count("a"))
print(name.center(50,"-"))
print(name.endswith("ex")) # 判断字符串以什么结尾
print(name.expandtabs(tabsize=30))
print(name[name.find("name"):])
print(name.format(name='alex', year=23))
print(name.format_map( {'name':'alex', 'year':23} ))
print('ab23'.isalnum())
print('dfsdfA'.isalpha())
print('1A'.isdecimal())
print('1.2'.isdigit())
print('aA'.isidentifier()) # 是不是合法的标识符 变量名
print('33'.isnumeric())
print(' '.isspace())
print('My Name Is '.istitle())
print(' '.isprintable()) # builtins
print('RR'.isupper())
print('+'.join(['1', '2', '3', '4'])) # 重要 字符拼接
结果:1+2+3+4
print(name.ljust(50,"*"))
print(name.rjust(50,"*"))
print('Alex'.lower())
print('Alex'.upper())
print('\nAlex'.lstrip())
print('Alex\n'.rstrip())
print(' Alex\n'.strip()) # 去掉行首行尾空格和\n
p = str.maketrans("abcdeftyu","123$#%456")
print("alex li".translate(p))
print('alex li'.replace('l','L',1))
print('alex lil'.rfind('l'))
print('1+2+3+4'.split('+')) # 按什么分成列表
print('1+2+\n3+4'.splitlines())
print('Alex Li'.swapcase()) # 大小写互换
print('lex li'.title()) # 开头变大写
print('lex li'.zfill(50))
print('-----')