python字符串操作、文件操作,英文词频统计预处理
1.字符串操作:
- 解析身份证号:生日、性别、出生地等。
- 凯撒密码编码与解码
- 网址观察与批量生成
解析身份证号:生日、性别、出生地等
def function3():
print('请输入身份证号')
ID = input()
if len(ID) != 18:
print('请输入有效的身份证号码')
else:
print('身份证号码格式正确')
birth = ID[6:14]
print('您的生日是:', format(birth))
check = ID[14:17]
if int(check) % 2 == 0:
print('您的性别为:女')
else:
print('您的性别为:男')
adress = ID[0:6]
print('您的地址号码是:', format(adress), '可根据号码上网查')
结果截图:

凯撒密码编码与解码
def function1():
str_raw = input("请输入明文:")
k = int(input("请输入位移值:"))
str_change = str_raw.lower()
str_list = list(str_change)
str_list_encry = str_list
i = 0
while i < len(str_list):
if ord(str_list[i]) < 123-k:
str_list_encry[i] = chr(ord(str_list[i]) + k)
else:
str_list_encry[i] = chr(ord(str_list[i]) + k - 26)
i = i+1
print ("加密结果为:"+"".join(str_list_encry))
def function2():
str_raw = input("请输入密文:")
k = int(input("请输入位移值:"))
str_change = str_raw.lower()
str_list = list(str_change)
str_list_decry = str_list
i = 0
while i < len(str_list):
if ord(str_list[i]) >= 97+k:
str_list_decry[i] = chr(ord(str_list[i]) - k)
else:
str_list_decry[i] = chr(ord(str_list[i]) + 26 - k)
i = i+1
print ("解密结果为:"+"".join(str_list_decry))
结果截图:

网址观察与批量生成
def function4():
for i in range(1, 10):
url = 'http://www.baidu.com/{}.html'.format(i)
print(url)
结果截图:

2.英文词频统计预处理
- 下载一首英文的歌词或文章或小说。
- 将所有大写转换为小写
- 将所有其他做分隔符(,.?!)替换为空格
- 分隔出一个一个的单词
- 并统计单词出现的次数。
def function5():
str1="""I'm a big big girl !
In a big big world !
It's not a big big thing if you leave me.
But I do do feel.
That I too too will miss you much.
Miss you much !
I can see the first leaf falling.
It's all yellow and nice.
It's so very cold outside.
Like the way I'm feeling inside.
I'm a big big girl !
In a big big world !
It's not a big big thing if you leave me.
But I do do feel.
That I too too will miss you much.
Miss you much !
Outside it's now raining.
And tears are falling from my eyes.
Why did it have to happen ?
Why did it all have to end ?
I'm a big big girl !
In a big big world !
It's not a big big thing if you leave me.
But I do do feel.
That I too too will miss you much.
Miss you much !
I have your arms around me ooooh like fire.
But when I open my eyes.
You're gone !
I'm a big big girl !
In a big big world !
It's not a big big thing if you leave me.
But I do do feel.
That I too too will miss you much.
Miss you much !
I'm a big big girl !
In a big big world !
It's not a big big thing if you leave me.
But I do feel that will miss you much !
Miss you so much !"""
#字符
s1 = str1.lower()
print(s1)
# 去掉空格
str1 = str1.lstrip()
print(str1)
# 将歌词的每个单词分隔组成列表形式
print("将歌词的每个单词分隔组成列表形式:")
strList = str1.split()
print(strList)
# 计算单词出现的次数
print("计算单词出现的次数:")
strSet = set(strList)
for word in strSet:
print(word, strList.count(word))
结果截图:

3.文件操作
- 凯撒密码:从文件读入密函,进行加密或解密,保存到文件。
- 词频统计:下载一首英文的歌词或文章或小说,保存为utf8文件。从文件读入文本进行处理。
凯撒密码
def function1():
print("从文本读取到的密文是:") fo = open(r"..\bd\mypassword", "r",encoding="utf-8")
str1 = fo.read()
# 文本读取到的密码
print(str1)
fo.close()
str_raw = str1 k = int(input("请输入位移值:"))
str_change = str_raw.lower()
str_list = list(str_change)
str_list_encry = str_list
i = 0
while i < len(str_list):
if ord(str_list[i]) < 123 - k:
str_list_encry[i] = chr(ord(str_list[i]) + k)
else:
str_list_encry[i] = chr(ord(str_list[i]) + k - 26)
i = i + 1
print("加密结果为:" + "".join(str_list_encry))
print("写入文本中,请稍后。。。")
fo = open(r"..\bd\mypassword", "w")
fo.write(str_list_encry)
fo.close() def function2():
str_raw = input("请输入密文:")
k = int(input("请输入位移值:"))
str_change = str_raw.lower()
str_list = list(str_change)
str_list_decry = str_list
i = 0
while i < len(str_list):
if ord(str_list[i]) >= 97 + k:
str_list_decry[i] = chr(ord(str_list[i]) - k)
else:
str_list_decry[i] = chr(ord(str_list[i]) + 26 - k)
i = i + 1
print("解密结果为:" + "".join(str_list_decry))
while True:
print (u"1. 凯撒加密")
print (u"2. 凯撒解密")
choice = input("请选择:")
if choice == "":
function1()
elif choice == "":
function2() else:
print (u"您的输入有误!")
词频统计
import os
path =os.getcwd()
fo=open(r"..\python1\what","r")
str1=fo.read()
#print(fo.readline())
fo.close()
s1=str1.lower()
#print(s1)
#去掉空格
str1=str1.lstrip()
#print(str1)
#将歌词的每个单词分隔组成列表形式
print("将歌词的每个单词分隔组成列表形式:")
strList=str1.split()
print(strList)
#计算单词出现的次数
print("计算单词出现的次数:")
strSet=set(strList)
for word in strSet:
print(word,strList.count(word))

python字符串操作、文件操作,英文词频统计预处理的更多相关文章
- 1.字符串操作:& 2.英文词频统计预处理
1.字符串操作: 解析身份证号:生日.性别.出生地等. ID = input('请输入十八位身份证号码: ') if len(ID) == 18: print("你的身份证号码是 " ...
- Python——字符串、文件操作,英文词频统计预处理
一.字符串操作: 解析身份证号:生日.性别.出生地等. 凯撒密码编码与解码 网址观察与批量生成 2.凯撒密码编码与解码 凯撒加密法的替换方法是通过排列明文和密文字母表,密文字母表示通过将明文字母表向左 ...
- python基础之 列表、元组操作 字符串操作 字典操作 集合操作 文件操作 字符编码与转码
本节内容 列表.元组操作 字符串操作 字典操作 集合操作 文件操作 字符编码与转码 1. 列表.元组操作 列表是我们最以后最常用的数据类型之一,通过列表可以对数据实现最方便的存储.修改等操作 定义列表 ...
- 组合数据类型,英文词频统计 python
练习: 总结列表,元组,字典,集合的联系与区别.列表,元组,字典,集合的遍历. 区别: 一.列表:列表给大家的印象是索引,有了索引就是有序,想要存储有序的项目,用列表是再好不过的选择了.在python ...
- Python的高级文件操作(shutil模块)
Python的高级文件操作(shutil模块) 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 如果让我们用python的文件处理来进行文件拷贝,想必很多小伙伴的思路是:使用打开2个 ...
- Python入门篇-文件操作
Python入门篇-文件操作 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 一.文件IO常用操作 open:打开 read:读取 write:写入 close:关闭 readlin ...
- python os&shutil 文件操作
python os&shutil 文件操作 # os 模块 os.sep 可以取代操作系统特定的路径分隔符.windows下为 '\\' os.name 字符串指示你正在使用的平台.比如对于W ...
- 跟着ALEX 学python day3集合 文件操作 函数和函数式编程 内置函数
声明 : 文档内容学习于 http://www.cnblogs.com/xiaozhiqi/ 一. 集合 集合是一个无序的,不重复的数据组合,主要作用如下 1.去重 把一个列表变成集合 ,就自动去重 ...
- python基础篇(文件操作)
Python基础篇(文件操作) 一.初始文件操作 使用python来读写文件是非常简单的操作. 我们使用open()函数来打开一个文件, 获取到文件句柄. 然后通过文件句柄就可以进行各种各样的操作了. ...
随机推荐
- C语言的一道数组题Plus
其实数组那部分当时学的东西挺简单的. 常见的题就是用一个数组装几个数字. 然后排序,找出大于n的数字有几个,有几个重复数字之类的. 去年想出来一个题. 因为以前写的代码太复杂,又有很多不足和bug.所 ...
- 基于FPGA的DDS设计(一)
最近在学习基于FPGA的DDS设计,借此机会把学习过程记录下来,当作自己的学习笔记也希望能够帮助到学习DDS的小伙伴. DDS(Direct Digital Synthesizer)直接数字合成器,这 ...
- Docker vs Warden
相同点: 都是依赖宿主操作系统内核的轻量级容器: 都采用了linux内核技术实现容器隔离(namespace)和资源限制(cgroup): 都使用了aufs文件系统: 不同点: 用途 warden是C ...
- 安装好XAMPP+安装好PhpStorm 然后搭建PHP开发环境
1.安装XAMPP 1.1.可以参考我的这篇博客:XMAPP的安装与配置. 2.安装并破解PhpStorm 2.1.可以参考我的这篇博客:PhpStorm2016.2版本安装与破解. 3.配置PhpS ...
- JavaScript总结(七)
JavaScript表单编程 表单是Web上与用户进行交互的主要界面.则我们需要掌握如何访问用户输入的表单数据,校验用户输入的正确性显得至关重要. ♞ 对Form元素进行脚本编写 ✍ 获取表单的应用 ...
- 【转载】COM 组件设计与应用(四)——简单调用组件
原文:http://vckbase.com/index.php/wv/1211.html 一.前言 同志们.朋友们.各位领导,大家好. VCKBASE 不得了, 网友众多文章好. 组件设计怎么学? 知 ...
- PageIOLatch和PageLatch
Latch是轻量级的锁,它是SQL Server内部用来同步资源访问的一个数据结构,使数据的访问同步有序,这意味着,当一个线程获得资源R的Latch的独占使用权时,如果其他的线程也想访问这个Latch ...
- 用Angule Cli创建Angular项目
Angular4.0来了,更小,更快,改动少 接下来为Angular4.0准备环境和学会使用Angular cli项目 1.环境准备: 1)在开始工作之前我们必须设置好开发环境 如果你的机器上还没有安 ...
- TensorFlow API 汉化
TensorFlow API 汉化 模块:tf 定义于tensorflow/__init__.py. 将所有公共TensorFlow接口引入此模块. 模块 app module:通用入口点脚本. ...
- hdu1232畅通工程(并查集,简单题)
传送门 最少好要修多少条路太能使全部城镇连通.只要用并查集算可以连通的城市的组数,修的路就是组数减1 #include<bits/stdc++.h> using namespace std ...