python学习笔记-练手实例
for i in range(1,10):
print ('\r')
for j in range(1,i+1):
print "%d*%d=%d" %(i,j,i*j) ,
2、题目:有两个磁盘文件A和B,各存放一行字母,把这两个文件中的信息合并(按字母顺序排列), 输出到一个新文件C中
代码:
fo=open("/Users/chichi/Documents/pythonscript/python学习/练手实例/a.txt")
str1=fo.read()
fo2=open("/Users/chichi/Documents/pythonscript/python学习/练手实例/b.txt")
str2=fo2.read()
str3=list(str1+str2)
str3.sort()
s=''
s=s.join(str3)
fo3=open("/Users/chichi/Documents/pythonscript/python学习/练手实例/c.txt","a+")
fo3.write(s)
3、题目:从键盘输入一些字符,逐个把它们写到磁盘文件上,直到输入一个 # 为止
代码:
def fo():
str=''
fo2=open("/Users/chichi/Documents/pythonscript/python学习/练手实例/d.txt","w")
while "#" not in str:
fo2.write(str)
str=raw_input("请输入内容:") fo()
4、题目:假设我们有一份文件,文件中包含了很多个人信息。现在需要一份去除其中敏感信息的版本,将文件中所有手机号的4~7位和身份证号的6~15位用 * 替换
代码:
#coding=utf-8 import re
def remove(data, i, line, regex, left, right):
m=re.search(regex,line)
#re.search(pattern, string[, flags]) 若string中包含pattern子串,则返回Match对象,否则返回None,注意,如果string中存在多个pattern子串,只返回第一个
if m:
digits = m.group(0)
start, end = m.start(0), m.end(0)
data[i]=line[:start+left] + '*' * (right-left+1)+ line[start+right+1:]
return True
return False infile='/Users/chichi/Documents/pythonscript/python学习/练手实例/info.txt'
outfile='/Users/chichi/Documents/pythonscript/python学习/练手实例/outfile.txt'
with open(infile) as fr:
data=fr.readlines() regex_id='(\d{18}|\d{17}x)'
regex_phone='1\d{10}'
for i, line in enumerate(data):
status = remove(data, i, line, regex_id, 5, 14)
if not status:
status = remove(data, i, line, regex_phone, 3, 6) with open(outfile, 'w') as fw:
for line in data:
fw.write(line) #enumerate() 函数用于将一个可遍历的数据对象(如列表、元组或字符串)组合为一个索引序列,同时列出数据和数据下标,一般用在 for 循环当中
5、题目:从控制台输入或从文件中读入一段文本,统计出其中每个字符出现的次数,并按照出现次数排序输出
代码:
#range() 函数可创建一个整数列表,一般用在 for 循环中
#语法:range(start, stop[, step])
#参数说明:
#start: 计数从 start 开始。默认是从 0 开始。例如range(5)等价于range(0, 5);
#stop: 计数到 stop 结束,但不包括 stop。例如:range(0, 5) 是[0, 1, 2, 3, 4]没有5
#step:步长,默认为1。例如:range(0, 5) 等价于 range(0, 5, 1)
#list.count(obj) 统计某个元素在列表中出现的次数
#list.append(obj) 在列表末尾添加新的对象
#方式一
def countstr():
stra=raw_input("请输入一串英文字符:")
list=[]
for i in range(len(stra)):
num=str(stra.count(stra[i]))
strb=stra[i]+":"+num
if strb not in list:
list.append(strb)
print list countstr() """
str=raw_input("请输入一个字符串:")
res={}
for i in str:
if i in res:
res[i]=res[i]+1
else:
res[i]=1
print(res)
"""
6、题目:随机生成5个长度为6的优惠码
#方式一
import random
def creat_num(num,long):
str = 'qwertyuiopasdfghjklzxcvbnm1234567890'
b = []
for i in range(num):
a = ''
for j in range(long):
a = a+random.choice(str)
b.append(a)
return b print creat_num(5,6) """ import random
stra='abcdefghijklmnopqrstuvwxyz0123456789'
def create_num(num,long):
for i in range(num):
a=''
for j in range(long):
a=a+random.choice(stra)
print a create_num(7,8)
7、题目:人民币转换
# -*- coding: UTF-8 -*-
dollarClass="{}元"
hornClass="{}元{}角"
centClass="{}元{}角{}分" def convert(input):
data = input.split(".")
if 1==len(data):
return dollarClass.format(data[0])
elif 2==len(data):
if 1==len(data[1]):
return hornClass.format(data[0],data[1])
elif 2==len(data[1]):
horn=data[1]
return centClass.format(data[0],horn[0],horn[1])
else:
return "没有比分更少了哦"
else:
return "这是外星货币哦" print(convert("134.27"))
print(convert("34.27"))
print(convert("34.2"))
print(convert(""))
print(convert("0.23"))
print(convert(".23"))
print(convert("0.234"))
print(convert("0.234.1"))
print(convert("0.234.1"))
python学习笔记-练手实例的更多相关文章
- 廖雪峰Python学习笔记——类和实例
Class MyList(list): __metaclass__ = ListMetaclass #它表示在创建MyList这个类时,必须通过 ListMetaclass这个元类的LIstMetac ...
- python学习笔记之module && package
个人总结: import module,module就是文件名,导入那个python文件 import package,package就是一个文件夹,导入的文件夹下有一个__init__.py的文件, ...
- [Python学习笔记]正则表达式总结
常用缩写字符及其含义表格查询 缩写字符分类 含义 \d 0-9的任意数字 \D 除0-9的数字以外的任何字符 \w 任何字母.数字或下划线字符(可以认为是匹配"单词"字符) \W ...
- OpenCV之Python学习笔记
OpenCV之Python学习笔记 直都在用Python+OpenCV做一些算法的原型.本来想留下发布一些文章的,可是整理一下就有点无奈了,都是写零散不成系统的小片段.现在看 到一本国外的新书< ...
- 【python学习笔记】7.更加抽象
[python学习笔记]7.更加抽象 类的定义就是执行代码块 在内存保存一个原始实例,可以通过类名来访问 类的实例化,是创建一个原始实例的副本, 并且所有成员变量与原始实例绑定 通过修改实例变量,可以 ...
- python学习笔记5_异常
python学习笔记5_异常 1.什么事异常 Python使用异常对象(exception object) 来表示异常情况.遇到错误会发生异常. 如果异常对象未被处理或被捕捉,程序就会用所谓的回溯(t ...
- python学习笔记4_类和更抽象
python学习笔记4_类和更抽象 一.对象 class 对象主要有三个特性,继承.封装.多态.python的核心. 1.多态.封装.继承 多态,就算不知道变量所引用的类型,还是可以操作对象,根据类型 ...
- Python 学习笔记 - 不断更新!
Python 学习笔记 太久不写python,已经忘记以前学习的时候遇到了那些坑坑洼洼的地方了,开个帖子来记录一下,以供日后查阅. 摘要:一些报错:为啥Python没有自增 ++ 和自减 --: 0x ...
- Python学习:类和实例
Python学习:类和实例 本文作者: 玄魂工作室--热热的蚂蚁 类,在学习面向对象我们可以把类当成一种规范,这个思想就我个人的体会,感觉很重要,除了封装的功能外,类作为一种规范,我们自己可以定制的规 ...
随机推荐
- 在Eclipse中创建Maven版的Web工程
步骤: 1.第一步 2.第二步 3.第三步 4.第四步 选中项目,右键在弹出的对话框中选择properties 5.第五步 6.第六步
- 在Centos7下安装Python+Selenium+Firefox学习环境
Selenium 一自动化测试工具.它支持 Chrome,Safari,Firefox 等主流界面式浏览器,如果你在这些浏览器里面安装一个 Selenium 的插件,那么便可以方便地实现Web界面的测 ...
- ios的@property属性和@synthesize属性(转)
当你定义了一系列的变量时,需要写很多的getter和setter方法,而且它们的形式都是差不多的,,所以Xcode提供了@property 和@synthesize属性,@property用在 .h ...
- 如何阅读jdk及开源框架的源码?
1.熟悉设计模式 可以边读源码 ,边熟悉设计模式,理解编程思想. jdk中对应的设计模式见:http://blog.csdn.net/gtuu0123/article/details/6114197 ...
- ThinkCMF 增加 区域(省、市、区)管理模块
区域管理模块是系统最常使用的一个模块. 可以直接在系统后台管理,前.后台调用. 调用方式: 区域模块使用说明: 1.将目录下的sp_region.sql导入数据库(如果数据库表前缀不是“sp_”,修改 ...
- PKUWC2019 真·游记
由于我这个大傻逼考试结果实在是没法看,所以这篇游记将尽可能略去和考试有关的内容,变成一篇真正的游记…… 接下来的内容中将会出现各种旅游攻略,寻求干货的同学可以提前左转了. Day -7 学考终于结束了 ...
- 74款安卓和IOS app源码地址
知乎专栏App https://github.com/bxbxbai/ZhuanLan WeChat高仿微信 项目地址: https://github.com/motianhuo/wechat Gan ...
- catkin
catkin ros https://github.com/dirkholz/pcl_online_viewer rosrun ???
- innobackupex工作原理
写篇文章凑个数,基本是翻译,建议看原文. http://www.percona.com/doc/percona-xtrabackup/2.1/innobackupex/how_innobackupex ...
- ps 中添加一张图片
// 测试打开一个文件var fileref = new File ("/E/work/没有图片提交/2014/2014.5.19/G20/部件渲染测试/png/tianji_1-41001 ...