字符串:

练习1:

str = "大胖三百磅不是二百磅陪着一百磅的小胖"
print(str.replace("磅", "斤")) # 替换所有
print(str.replace("磅", "斤", 2)) # 替换两次 len = len(str) # 这句话的字数长度
print(str[5:len - 8]) # 截取第五个字符~倒数第八个字符。结果:不是二百磅 str = "日照香炉生紫烟"
a = str[::-1] # 反转成倒序
print(a) # 烟紫生炉香照日

练习2:  字符串 <=> 列表

# -*- coding: utf-8 -*-
# coding=utf-8 str1 = '赵钱孙李周吴郑王'
ls1 = list(str1) # 字符串转为列表
print(ls1)                  # ['赵', '钱', '孙', '李', '周', '吴', '郑', '王']
str2 = "".join(ls1) # 列表转为字符串
print(str2)               # 赵钱孙李周吴郑王
str2 = str2[::-1] # 字符串倒序
print(str2)               # 王郑吴周李孙钱赵

练习3:  随机生成字符串

# -*- coding: utf-8 -*-
# coding=utf-8 import random
import string str1 = string.ascii_uppercase # 大写 ABCDEFGHIJKLMNOPQRSTUVWXYZ
#str1 = string.ascii_lowercase # 小写 abcdefghijklmnopqrstuvwxyz
#str1 = string.ascii_letters # 大写和小写 abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ #随机生成6位字母
mylist1 = [random.choice(str1) for i in range(6)]
print(''.join(mylist1)) # 随机生成6位数字
str2 = string.digits # 数字 1234567890
mylist2 = [random.choice(str2) for i in range(6)]
print(''.join(mylist2)) #随机生成10位字母和数字混合
str3 = string.ascii_uppercase + string.digits # 字母和数字
mylist3 = [random.choice(str3) for i in range(10)]
print(''.join(mylist3))

文本文件:

http://www.runoob.com/python3/python3-inputoutput.html  不同模式打开文件

r   rb  r+  rb+
w  wb  w+  wb+
a  ab  a+  ab+

r   只能读

r+   可读可写   不会创建不存在的文件(若文件不存在,报错)。从顶部开始写,会覆盖之前此位置的内容(覆盖写)

a   只能写        从文件底部添加内容,不存在则创建

a+   可读可写   从文件顶部读取内容,从文件底部添加内容,不存在则创建。(追加新内容)

w   只能写        覆盖整个文件,文件不存在则创建

w+   可读可写   如果文件存在,则覆盖整个文件,文件不存在则创建

练习1:文本文件读取、处理及保存:  读取chengyu.txt,按行处理后,保存到test111.txt中。文本文件都是utf-8的

# -*- coding: utf-8 -*-

html = ""
fo = open('d:/chengyu.txt', 'a+') #以读写方式处理文件IO
fo.seek(0)
str_line = fo.readline()
while str_line:
# print(str_line)
str_line = fo.readline() # 有两种标签<h3> 和 <p>,处理<p>标签中所含的成语
# str_line = "<p>急中生智 仰不愧天 镇定自若 化险为夷</p>"
str_line2 = ""
is_word = str_line.find("<p>")
if is_word>-1:
print("----是成语所在行----")
# print(str_line)
str_line = str_line.replace("<p>","")
str_line = str_line.replace("</p>","")
str_line = str_line.replace("\n","")
for _word in str_line:
if _word.find(" ")>-1:
str_line2 = str_line2 + "</u>" + _word + "<u>"
elif _word.find("、")>-1:
str_line2 = str_line2 + "</u>" + _word + "<u>"
else:
str_line2 = str_line2 + _word
str_line2 = "<u>" + str_line2 + "</u>"
html = html + "<p>" + str_line2 + "</p>\n" else:
print("----NO-所在行----")
html = html + str_line
# print(str_line)
fo.close fo2 = open('d:/test111.txt',"w")
fo2.write(html)
fo2.close()

练习2:打开一个网页

# -*- coding: utf-8 -*-
#coding=utf-8
import requests def getTxts():
url = 'https://www.cnblogs.com/qq21270/'
r = requests.get(url,verify=False)
print(r.text) if __name__ == '__main__':
getTxts()

 练习3:

# -*- coding: utf-8 -*-
# coding=utf-8 # 读取文本文件,把所有的汉字拆成一个list
f = open("jieba_text.txt", 'r', encoding='utf8') # 从文件中读取要处理的大段文字
txt1 = f.read()
txt1 = txt1.replace('\n', '')
print(txt1)

..

python3基础:字符串、文本文件的更多相关文章

  1. Python3基础——字符串类型

    Text Sequence Type - str(immutable) class str(object='') class str(object=b'', encoding='utf-8', err ...

  2. Python3基础-特别函数(map filter partial reduces sorted)实例学习

    1. 装饰器 关于Python装饰器的讲解,网上一搜有很多资料,有些资料讲的很详细.因此,我不再详述,我会给出一些连接,帮助理解. 探究functools模块wraps装饰器的用途 案例1 impor ...

  3. 2. Python3 基础入门

    Python3 基础入门 编码 在python3中,默认情况下以UTF-8编码.所有字符串都是 unicode 字符串,当然也可以指定不同编码.体验过2.x版本的编码问题,才知道什么叫难受. # -* ...

  4. python002 Python3 基础语法

    python002 Python3 基础语法 编码默认情况下,Python 3 源码文件以 UTF-8 编码,所有字符串都是 unicode 字符串. 当然你也可以为源码文件指定不同的编码: # -* ...

  5. Python3基础(八) 模块

    在程序中定义函数可以实现代码重用.但当你的代码逐渐变得庞大时,你可能想要把它分割成几个文件,以便能够更简单地维护.同时,你希望在一个文件中写的代码能够被其他文件所重用,这时我们应该使用模块(modul ...

  6. Python3基础语法和数据类型

    Python3基础语法 编码 默认情况下,Python3源文件以UTF-8编码,所有字符串都是unicode字符串.当然你也可以为原码文件制定不同的编码: # -*- coding: 编码 -*- 标 ...

  7. python基础——字符串和编码

    python基础——字符串和编码 字符串也是一种数据类型,但是,字符串比较特殊的是还有一个编码问题. 因为计算机只能处理数字,如果要处理文本,就必须先把文本转换为数字才能处理.最早的计算机在设计时采用 ...

  8. Python 基础 字符串拼接 + if while for循环

    注释单行注释 #多行注释 ''' 三个单引号或者三个双引号 """ ''' 用三引号引住可以多行赋值 用户交互 input 字符串拼接 +  ""%( ...

  9. python3基础视频教程

    随着目前Python行业的薪资水平越来越高,很多人想加入该行业拿高薪.有没有想通过视频教程入门的同学们?这份Python教程全集等你来学习啦! python3基础视频教程:http://pan.bai ...

  10. Python3 格式化字符串

    Python3 格式化字符串 在Python 3.6之前,有两种将Python表达式嵌入到字符串文本中进行格式化的主要方法:%-formatting和str.format() 一.%-formatti ...

随机推荐

  1. JAVA爬取百度贴吧图片

    package com.wang.xiaowei.utils; import com.sun.image.codec.jpeg.JPEGCodec; import com.sun.image.code ...

  2. HTML5和CSS3阶段,我是如何学习的?

    经过一个月的学习,我收获了许多,今天的测验是做一个企业中文网站,令我自己感到吃惊的是,我前前后后用了4个小时就完成了,这在一个月前根本不可能,因为对布局属性的理解还不够深刻,常常会在调试中浪费大量时间 ...

  3. 今天遇到的一个奇葩的NoClassFound的问题

    nohup的日志中报错 java.lang.NoClassDefFoundError: org/apache/catalina/core/ApplicationContext$DispatchData ...

  4. hdu 2063 二分图匹配

    题意:一些女的和一些男的有好感,有好感的能一起坐过山车,问最多能组成多少对 hdu 11 页上少有的算法题,二分图匹配问题,匈牙利算法,对于每一个汉子,看和他有好感的妹子有没有配对了,没有配对过就可以 ...

  5. git server side hook 试用

    git 的hook 是一个很方便的功能,我们可以使用hook 做好多处理,比如client side hook 进行 提交格式校验,server side 进行ci/cd 处理 测试使用docker- ...

  6. benthos 通过配置文件配置 stream 说明

    stream 模式,我们也可以通过配置文件进行配置 参考配置文件 input: type: http_server buffer: type: memory pipeline: threads: 4 ...

  7. sql server 表变量存储临时查询数据

    对于使用sql server 编写存储过程或者类似的sql 查询的时候我们使用表变量进行临时数据的存储,可以方便我们进行下来的数据处理 表变量的使用类似如下: declare @userinfo ta ...

  8. ERROR 1130 (HY000): Host '192.168.20.165' is not allowed to connect to this MySQL server

    问题 远程连接mysql时遇到如下问题: ERROR 1130 (HY000): Host '192.168.20.165' is not allowed to connect to this MyS ...

  9. Net分布式系统整体框架

    Net分布式系统之一:系统整体框架介绍 一.设计目的 从事.Net平台开发系统已有8年多了,一直思考搭建.Net分布式系统架构.基于window平台搭建的大型分布式系统不多,之前了解过myspace. ...

  10. Java 接口 interface implements

    接口定义了一系列的抽象方法和常量,形成一个属性集合. 接口定义完成后任何类都可以实现接口,而且一个类可以实现多个接口. 实现接口的类必须实现接口中定义的抽象方法,具体实现细节由类自己定义.可以说接口定 ...