问题一:做为Apple Store App独立开发者,你要搞限时促销,为你的应用生成激活码(或者优惠券),使用Python如何生成200个激活码(或者优惠券)?

简介:通用唯一识别码(英语:Universally Unique Identifier,简称UUID)是一种软件建构的标准,亦为开放软件基金会组织在分散式计算环境领域的一部份。

UUID的目的,是让分散式系统中的所有元素,都能有唯一的辨识资讯,而不需要透过中央控制端来做辨识资讯的指定。如此一来,每个人都可以建立不与其它人冲突的UUID。在这样的情况下,就不需考虑资料库建立时的名称重复问题。目前最广泛应用的UUID,是微软公司的全局唯一标识符(GUID),而其他重要的应用,则有Linux ext2/ext3档案系统、LUKS加密分区、GNOME、KDE、Mac OS X等等。另外我们也可以在e2fsprogs套件中的UUID函式库找到实现。

分析:这里参考(http://www.blogjava.net/BearRui/archive/2010/10/19/unique_random_code.html)

主键+随机码的方式.

这种方法优点:使用也比较简单,不用直接去查询数据库,而最大的优点是查询的时候,可以根据邀请码直接得到主键id, 然后根据id去数据库查询(速度很快),再比较查询出来的邀请码和用户提交的邀请码是否一致。

  1. 生成:id(数据库primary key )->16进制 + "L(标识符)" +随机码
  2. 获取id:获取16进制的id再转回10进制
import random
import stringdef activation_code(id,length = 10):'''id+L+随机码string模块中的三个函数为:string.letters,string.printable.string.printable'''prefix = hex(int(id))[2:]+'L'  #prefix为前缀length =length -len(prefix)chars = string.ascii_letters+string.digitsreturn prefix + ''.join([random.choice(chars) for i in range(length)])def get_id(code):'''hex to dec'''return str(int(code.upper(),16))if __name__ =="__mian__":for i in range(10,500,35):code = activation_code(i)id_hex = code.split('L')[0]id = get_id(id_hex)print (code,id)if __name__=="__main__":for i in range(10,200,35):code = activation_code(i)id_hex = code.split('L')[0]id  = get_id(id_hex)print (code,id)#print(code)

问题二:任一个英文的纯文本文件,统计其中的单词出现的个数

1.strip()没有参数时,删除空白符,包括、n\r\t空格,strip()函数只能用于str类型,list类型等不可用。

2.split()用于分割,分隔符可以自己制定

def world_count(inputfile):if os.path.isfile(inputfile) !=True:print("inputfile not exits")sys.exit()word_count = 0words = open(inputfile , "r").readlines()for word in words:print("word: %s" %word)temp = word.strip().split('')word_count += len(temp)print("word count:%s" %word_count)return word_count

问题三:用 Python 写一个爬图片的程序

这个就是一个简单的爬虫,只要模拟浏览器即可

import urllib.request
import reurl = 'http://tieba.baidu.com/p/2166231880'
headers = ("User-Agent","Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/62.0.3202.94 Safari/537.36")
opener = urllib.request.build_opener()
opener.assheaders = [headers]
urllib.request.install_opener(opener)
data = urllib.request.urlopen(url).read()
data2 = data.decode("utf-8","ignore")
pattern = '<img pic_type="0" class="BDE_Image" src="(.*?)" bdwater="杉本有美吧,.*?" width=".*?" height=".*?" changedsize="true">'
allurl = re.compile(pattern).findall(data2)
#print(allurl)for i in range(0,len(allurl)):#print(allurl[i])thisimg = allurl[i]file = "D:/pycode/"+str(i)+".jpg"urllib.request.urlretrieve(thisimg,filename = file)print("第" + str(i) + "次爬去成功")

问题四:一个HTML文件,找出里面的正文

问题五:有个目录,里面是你自己写过的程序,统计一下你写过多少行代码。包括空行和注释,但是要分别列出来。

import os
import string
import reos.chdir('C:/workspace')fh=open('test_test.py')
read_fh=fh.readlines()
fh.close()
number_code=0
number_empty=0
number_note=0
pattern='.*#' #正则匹配模式for x in read_fh:if '#' in x: #计算注释数目if re.findall(pattern,x)[0][:-1].isspace() or re.findall(pattern,x)[0][:-1]=='':number_note+=1else:number_code+=1elif x.isspace():number_empty+=1else:number_code+=1
print('code number is %d'%(number_code+number_empty+number_note))
print('empty number is %d'%number_empty)
print('note number is %d'%number_note)

问题六:有1、2、3、4个数字,能组成多少个互不相同且无重复数字的三位数?都是多少?

d = [1,2,3,4]
def threenums():print(None)count = 0nums = []for index1 in range(1,5):for index2 in range(1,5):for index3 in range(1,5):if index1 != index2 and index2 != index3 and index3 !=index1:num = 100*index1 +10*index2 +index3if num not in nums:nums.append(num)count +=1print(count)print(nums)

问题七:

企业发放的奖金根据利润提成。
利润(I)低于或等于10万元时,奖金可提10%;
利润高于10万元,低于20万元时,低于10万元的部分按10%提成,高于10万元的部分,可可提成7.5%;
20万到40万之间时,高于20万元的部分,可提成5%;
40万到60万之间时高于40万元的部分,可提成3%;
60万到100万之间时,高于60万元的部分,可提成1.5%,
高于100万元时,超过100万元的部分按1%提成,
从键盘输入当月利润I,求应发放奖金总数?

def reward(profit):reward = 0.0if profit <=100000:return profit*0.1elif profit <=20 and profit >10:return (profit-10000)*0.075+100000*0.1elif profit <=40 and profit >20:return (profit-10000)*0.05+100000*0.1+10000*0.075elif profit <=60 and profit >40:return (profit-10000)*0.03+100000*0.1+10000*0.075+100000*0.05elif profit <=100 and profit >60:return (profit-10000)*0.015+100000*0.1+10000*0.075+100000*0.05+100000*0.03else:return (profit-10000)*0.01+100000*0.1+10000*0.075+100000*0.05+100000*0.03+100000*0.015if __name__ == "__mian__":profit = int(input("请输入当月利润:"))print(reward(profit))

问题八:一个整数,
它加上100后是一个完全平方数,再加上168又是一个完全平方数,
请问该数是多少?

import mathfor i in range(10000):x = int(math.sqrt(i+100))y = int(math.sqrt(i+168))if (x*x == i+100) and (y*y == i+168):print(i)

(未完待续,有时间会继续上传,http://www.cnblogs.com/bakoom/p/5251293.html)

转载于:https://www.cnblogs.com/wj-1314/p/7487040.html

Python程序每日一练习相关推荐

  1. [附源码]计算机毕业设计Python+uniapp每日签到打卡小程序gyrj5(程序+lw+远程部署)

    [附源码]计算机毕业设计Python+uniapp每日签到打卡小程序gyrj5(程序+lw+远程部署) 该项目含有源码.文档.程序.数据库.配套开发软件.软件安装教程 项目运行环境配置: Python ...

  2. 用于获得个股MACD数据及每日收盘数据的python程序

    用于获得个股MACD数据及每日收盘数据的python程序 几年前上一波股票牛市的时候,曾经编写了一个判断股价的python程序.最近几日股票市场又开始比较火热,估计有的朋友可能需要进行股票数据的获得和 ...

  3. 从零开始开发Python程序(四)—— 抓取每日早报新闻

    这是一片系列文章,最好先看看上一篇 从零开始开发Python程序(三)-- 用文本编辑器来写代码 目录 一.需求说明 二.程序设计 三.从指定网站获取新闻 1.找一个提供新闻的网站 2. 库的安装 3 ...

  4. Python程序员Debug利器,和Print说再见 | 技术头条

    整理 | Rachel 责编 | Jane 出品 | Python大本营(id:pythonnews) [导语]程序员每日都在和 debug 相伴.新手程序员需要学习的 debug 手段复杂多样,设置 ...

  5. python程序-30分钟学会用Python编写简单程序

    原标题:30分钟学会用Python编写简单程序 参与文末每日话题讨论,赠送异步新书 异步图书君 学习目标 知道有序的软件开发过程的步骤. 了解遵循输入.处理.输出(IPO)模式的程序,并能够以简单的方 ...

  6. 趣图:Python 程序员转 Java

    (给程序员的那些事加星标,每天看趣图) 当 Python 程序员尝试转投 Java 之时 ↓↓↓ 往期趣图(点击下方图片可跳转阅读) 关注「程序员的那些事」加星标,不错过趣图 (商务合作联系:Juli ...

  7. Python paromiko每日生活学习感悟(第一次写,紧张hahaha)

    Python paromiko每日生活学习感悟(第一次写,紧张hahaha) 学习篇 生活篇 学习篇 今天整天实习,解决了虚拟机通过SSH进行远程登录,需求还增加一项就是要采用多个接入多个设备,采用了 ...

  8. 福州python招聘_【Python程序员招聘|Python程序员最新招聘信息】-看准网

    立即投递 职位薪资:6000-10000 经验:不限 学历:不限 类型:全职 linux下python编程 对接ai平台做应用 立即投递 职位薪资:8000-13000 经验:不限 学历:本科 类型: ...

  9. python编程选股_随笔吧量化投资选股的python程序实践(附源码)

    量化投资选股的python程序实践(附源码) 首先选取沪深股票市场,本人比较关注的12只股票: 000002 万科A,600566 济川药业,300051 三五互联,002039 黔源电力,60087 ...

最新文章

  1. uva 11991 (map vector 嵌套)
  2. 路径搜索 – Dijkstra 算法 (MATLAB实现)
  3. Object对象具体解释(二)之clone
  4. 使用jQuery插件realshadow实现超酷真实阴影效果
  5. Linux配置 DNS and BIND服务配置详解--缓存服务器配置 正反向解析配置
  6. 《自然》年度十大人物出炉!中国科学家入选
  7. python字典内置方法_柳小白Python学习笔记 12 内置方法之字典方法
  8. ubuntu 16.04 和win10双系统ubuntu无法更新问题解决
  9. linux纯终端下中文输入,Linux中文输入法的问题解决
  10. crmeb多商户二开crmeb类库二开文档services服务类【5】
  11. 集群通信:从心跳说起
  12. IDEA全局替换快捷键
  13. ipcm 核间通信相关 ---(1)
  14. Java学习笔录3(变量和常量)
  15. 高德地图react版本开源库react-amap与react-amap-next分析
  16. 求两个圆公切线的模板
  17. CSS Cascading Style Sheets 层叠样式表:CSS了解 (一)
  18. 【二、八、十、十六】进制转换详解
  19. 通过cmd命令行操作mysql
  20. 一题搞懂什么是数据库候选键

热门文章

  1. mac vagrant 虚拟机nfs挂载点
  2. 使用 C# 编程对RTF文档的支持
  3. linux 下mysql等php的安装 lnmp
  4. hadoop+hive-0.10.0完全分布式安装方法
  5. 机器学习03Logistic回归
  6. 处理测试环境硬盘爆满
  7. 自动加密企业关键业务数据 赛门铁克推出全新信息保护解决方案
  8. 二叉树的基本操作及应用(三)
  9. 第四章 大网高级   NSSA
  10. MySQL安装与设置