python3基础:字符串、文本文件

字符串:

练习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-8str1 = '赵钱孙李周吴郑王'
ls1 = list(str1)        # 字符串转为列表
print(ls1)                   # ['赵', '钱', '孙', '李', '周', '吴', '郑', '王']
str2 = "".join(ls1)     # 列表转为字符串
print(str2)                   # 赵钱孙李周吴郑王
str2 = str2[::-1]       # 字符串倒序
print(str2)                   # 王郑吴周李孙钱赵    
复制代码

 

练习3:  随机生成字符串

复制代码
# -*- coding: utf-8 -*-
# coding=utf-8import random
import stringstr1 = 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 + _wordstr_line2 = "<u>" + str_line2 + "</u>"html = html + "<p>" + str_line2 + "</p>\n"else:print("----NO-所在行----")html = html + str_line# print(str_line)
fo.closefo2 = open('d:/test111.txt',"w")
fo2.write(html)
fo2.close()
复制代码

 

 

 

练习2:打开一个网页

复制代码
# -*- coding: utf-8 -*-
#coding=utf-8
import requestsdef 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)
复制代码

 

..

转载于:https://www.cnblogs.com/valorchang/p/11282483.html

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/361620.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

[Python][小知识][NO.3] Python 使用系统默认浏览器打开指定URL的网址

1、前言 一般用到的地方&#xff1a; GUI交互界面下&#xff0c;单击某个按钮实现打开指定网址。 某帮助菜单项目&#xff0c;需要跳转网页显示时。 O.O 某XX程序&#xff0c;需要植入网页弹窗广告时... 2、方法 调用 webbrowser 包中的 open 函数即可。 (没安装该包的 CMD命令…

全部关于测试–第1部分

这是三个系列文章中的第一篇。 测试思路 技术技巧 工具和提示 心态 测试代码是需要学习的东西。 需要花费时间来吸收如何做好。 这是一种应该始终练习和改进的技巧。 过去&#xff0c;开发人员没有进行测试&#xff0c;而是检查了他们的代码。 这是一个很好的技巧&#xf…

利用数据库创建webservice

http://www.cnblogs.com/yungboy/archive/2011/11/07/2239642.html转载于:https://www.cnblogs.com/mingyongcheng/archive/2012/03/08/2385242.html

ASP.NET AJAX Debugging and Tracing

Moved to http://blog.tangcs.com/2008/09/30/asp-net-ajax-debugging-and-tracing/转载于:https://www.cnblogs.com/WarrenTang/archive/2008/09/30/1302328.html

JS中编码操作

常见的网页设计编码&#xff1a;Unicode的UCS-2 UCS-4 UTF-8 UTF-16 UTF-32以及ASCII和ANSI。 要知道JS最初定稿时使用的编码是UCS-2&#xff08;因为那时候还没UTF-16&#xff0c;本质&#xff1a;UTF-16就是对UCS-2的扩展&#xff0c;前面的65536个字符就是UCS-2本身&#x…

Apache Commons IO教程:初学者指南

Apache Commons IO是由Apache Foundation创建和维护的Java库。 它提供了许多类&#xff0c;使开发人员可以轻松地完成常见任务&#xff0c;并且减少样板代码 &#xff0c;而每个项目都需要一遍又一遍地编写此类库的重要性是巨大的&#xff0c;因为它们已经成熟由经验丰富的开发…

MyEclipse 10优化技巧

MyEclipse 10优化速度方案仍然主要有这么几个方面&#xff1a;去除无需加载的模块、取消冗余的配置、去除不必要的检查、关闭更新。第一步: 去除不需要加载的模块一个系统20%的功能往往能够满足80%的需求&#xff0c;MyEclipse也不例外&#xff0c;我们在大多数时候只需要20%的…

为什么应该避免JSF

长期以来&#xff0c;对我来说&#xff0c;JSF只是另一个我不太在乎的Web框架。 这改变了。 在被迫使用了几个月之后&#xff0c;我认为在几乎所有情况下&#xff0c;这都是重大的项目风险。 在这里&#xff0c;我提出此判决的理由。 UI和处理逻辑的纠缠不清。 官方教程声称以…

HTML知识点总结之img、scirpt、link标签

<img>元素 使用<img>可以在网页插入一个图片&#xff0c;但实际上<img>标签并不会在网页中直接插入图像&#xff0c;而是从网页上链接图像。 <img>的主要属性 &#xff08;1&#xff09;src属性&#xff1a;图片的路径。 &#xff08;2&#xff09;alt…

更多 Kinect for Windows 项目揭示

虽然Kinect for Windows的发布不过才过去一个月而已&#xff0c;但是到目前为止这个Xbox 360游戏设备辅助产品似乎已经赶上了一些商业企业项目了。其中包括一个让机器人自动购物车成为现实的项目。在Microsoft Power and Utilities博客 的一篇博文中&#xff0c;微软列举了一些…

CSS3的常用属性(一)

选择器 属性选择器&#xff08;通过标签属性来选择&#xff09; E[attr]&#xff1a; 表示只要元素<E>存在属性attr就能被选中 如&#xff1a; div[class]E[attrval]&#xff1a; 表示元素<E>存在属性attr的值等于val&#xff0c;即可被选中 如&#xff1a; di…

问题集锦

1、viewpager 用到了ViewPager&#xff0c;Android5.0.1&#xff0c;却额外在Build Path中引入了v4jar包&#xff0c;并且在“Order and Export”中勾选了此jar包&#xff0c;编译时出现错误&#xff1a; [2014-09-28 23:49:30 - Dex Loader] Unable to execute dex: Multiple …

ImageField,FileField上传文件命名问题

django 的models.ImageFiled,FileField有属性upload_to&#xff0c;该属性是指定将文件上传到服务器的位置&#xff0c;及存储在哪个文件夹下&#xff0c;你可以很方便甚至很少的代码就可以实现文件上传操作了。 但是默认的存储的文件名是没有改变的&#xff0c;也就是说所存储…

Spring靴子战争包装

Spring Boot建议在构建期间使用嵌入式容器&#xff08;tomcat或码头&#xff09;创建一个可执行jar&#xff0c;并在运行时将此可执行jar作为独立进程使用。 但是&#xff0c;通常将应用程序部署到外部容器上是很常见的&#xff0c;Spring Boot提供了打包应用程序的方式&#x…

递归函数

递归函数实在一个函数通过名字调用自身的情况下构成的。 1 window.onload function() {2 var a factorial;3 factorial null;4 alert(a(4));5 };6 7 /**8 * 叠乘9 * param {叠乘的基数} num n 10 * return {叠乘结果} n*(n-1)*(n-2)*...*1 11 */…

正则表达式及测试工具

1. 正则表达式 正则表达式&#xff1a;一种匹配文本中的字符序列的字符模式。在很多文本编辑器或其他工具里&#xff0c;正则表达式通常被用来检索或替换那些符合某种模式的文本内容。许多程序设计语言都支持利用正则表达式进行字符串操作。 一个正则表达式就是由普通字符&…

CCD与CMOS摄像头的区别

首先说一下在闭路电视监控中摄像机的CCD 和CMOS 的结构&#xff0c;ADC的位置和数量是最大的不同。简单的说&#xff0c;CCD每曝光一次&#xff0c;在快门关闭后进行像素转移处理&#xff0c;将每一行中每一个像素&#xff08;pixel&#xff09;的电荷信号依序传入“缓冲器”中…

Java注释教程– ULTIMATE指南(PDF下载)

编者注&#xff1a;在本文中&#xff0c;我们提供了全面的Java注释教程。 Java中的注释是一项主要功能&#xff0c;每个Java开发人员都应该知道如何使用它们。 我们在Java Code Geeks上提供了许多教程&#xff0c;例如创建自己的Java注释 &#xff0c; 带有自定义注释的Java注…

Jquery获取DOM绑定事件

获取到当前正在执行的事件&#xff1a; $(#testDive).bind(click, function(event){alert(event: event.type)}); 获取所有绑定事件&#xff1a; $._data(document.getElementById(testDive), events); 更多专业前端知识&#xff0c;请上 【猿2048】www.mk2048.com

laravel中的自定义函数的加载和第三方扩展库加载

一.自定义公共函数 1. 创建文件 app/Helpers/functions.php 2. 修改项目 composer.json 3.运行composer dump-auto 4.OK&#xff0c;然后你就可以在任何地方用到 app/Helpers/functions.php 中的函数了。 二.添加第三方扩展库 1.确定你要放第三方库的目录&#xff0c;比如还是刚…