9月11日

1.用List实现Python里的?:条件表达式

["false","true"][判断条件]

其实就是一个List[0]还是List[1]的问题。条件成立就是List[1],不成立就是List[0];非常简单。

2.用Python写一个冒泡排序

def mySort(List):
for j in range(len(List)):
flag=1
for i in range(len(List)-j-1):
if(List[i+1]>List[i]):
List[i],List[i+1]=List[i+1],List[i]
flag=0
if(flag):
break
return List

今天比较有兴致,再学一点。

3.倒序输出一个字符串

word1="hello world"
word2=""
for i in range(len(word1)):
word2+=word[-1-i]
print(word2)

更简单的方法

print(word[::-1])

本质:第一个参数是开始位置,第二个参数是长度,第三个参数是步场,第三个参数设置成负数就倒着开始分,就是从后往前啦。List也可以用这种片分来倒序。

9月12日

1.输出一个字典里所有的Key,用“,”分割。

result=""
for k,v in worker.items():
result+=k+","
print(result[:len(result)-1])

没想到比较好的方法去掉最后一个",",只好这样啦。

2.读取一个txt文件

file1=open("D:/8m.txt")
lines1=file1.readlines(100)
for line in lines1:
print(line)

3.输出100以内的素数和合数

开始的想法是判断是否能整除2到n**1/2的数字,代码就不写了,跟c语言差不多。

想用Python比较独特的List分片来做。代码如下

def SuShu(num):
list1=[i for i in range(0,num)]
list2=[]
list3=[1]
for j in range(2,num):
if j not in list2:
list2+=list1[j::j][1:]
list3.append(j)
return [list2,list3]

List1里面是所有0-100的数字,把素数放到List3里面,把他的倍数放到List2里,最后就都分开了。但应该效率不高。

仔细找了找,找到了List相减的办法,吃饭回来写新方法。

9月13日

1.输出100以内的素数和合数(续)

接上文,昨天吃过饭下大雨没来。囧,最后发现所谓List相减的方法是把List转为set相减再转回List。

所以,干脆直接用set吧。利用set的union(联合), difference(差)来实现。代码如下

def SuShu(num):
set1={i for i in range(2,num)}/*这里存素数*/
set2=set()/*这里存合数*/
for j in set1:
set2= set2 | {i for i in range(j**2,num,j)}
/*从j的平方开始,以J为步长,取出所有的
J的倍数然后和已有的合数集相并,自己就剔除了
重复的那一部分数字*/
set1= set1-set2
/*然后在素数集里面把合数都取掉,下次循环就直接
从下一个素数开始了*/
return [set1,set2]

中间发现一个问题,set2={}产生的是一个dict,只能用set2=set()来创建空集合,利用了range(起始值,最终值,步长)生成一个集合,然后并集去重复。应该还有更好的办法,暂时没想到。

9月16日

中间差了两天没更新,这两天学了些Python面向对象的基础,但是项目太忙,没想好用什么例子来展示我学的。。囧。想写一个简单工场模式,没成功。完了回头再补这部分知识吧。

昨晚逛学校网站,发现体测网站有注入漏洞,摸索好久,然后注入进去导出了一大堆同学的数据。。。打算用python和这些数据做点什么。

目前的规划是,先学python处理分析文件,把那些html里的数据提取出来,按地区分出来,再学python的web应用,做个查询同校老乡的网页。

由于时间原因,可能进度会很慢,但尽量坚持更新进度到博客上来。

每天学一点Python的更多相关文章

  1. 每天学一点Python(2)

    9月16日(python扩展的安装和使用) 接着上一篇继续.按照之前计划,先分析导出的数据,再做进一步统计. 导出的数据是html类型的,想到的处理方法有: 1.直接readlines然后一行一行找我 ...

  2. 最近都会来学一点Python

    https://www.cnblogs.com/hellosecretgarden/p/9206648.html 打开电脑,发现Python都是之前的代码,将近一年之前的时间. 最近都会重新掌握起来, ...

  3. 每天学一点——python基本数据类型

    python基本数据类型 字符串类型(str) 字符串类型的数据一定是描述性质的,且由引号括起来的数据都是字符串数据(单引号.双引号.三引号.) 如下图 (简单易懂) 这里列举一些不明所以的问题 如图 ...

  4. 每天学一点——python变量、常量与数字类型

    python变量.常量与数字类型 常量 (一句话能概括先讲它) 严格来讲,python中除了π与N就没有不变的量 所以,在python中我们识别常量是看它是否全大写(如下图) 变量 变量,顾名思义,就 ...

  5. 每天学一点——python注释规范

    python注释规范 python注释语法 这个是注释 注释是不影响代码运行的 当然注释也是有书写规范的,就像图片中的 注释前面#加空格再加上这条代码的注释(单行注释用#) 不然你会得到下面的结果 * ...

  6. 每天学一点——python用户的交互、格式化输出与基础运算符运用

    用户交互 input输入 input接收的数据都是字符串类型 如下图 output输出 还可以相加 换行符 想让他们隔行排列的话就可以这样(如图) 在想各行的开头前面加上\n即可 那若是想将两个输出的 ...

  7. 人工智能时代,是时候学点Python了!

    “是时候学点Python了”.作为一名不怎么安分的程序员,你或许觉得,产生这样的想法并不奇怪,但学习Python却是出于自己对工作现状以及如何应对未来挑战所作出的思考.读过我以前博客的朋友,可能都知道 ...

  8. 学了 Python 能用来做这些!

    来源商业新知网,原标题:学了 Python 能用来做什么? 说起编程语言,Python 也许不是使用最广的,但一定是现在被谈论最多的.随着近年大数据.人工智能的兴起,Python 越来越多的出现在人们 ...

  9. 编程当道,学点Python技术好傍身

    为了填满AI时代的人才缺口,编程语言教育都从娃娃抓起了!如果你还不懂Python是什么将来怎么给孩子辅导作业呢? Python新手入门教程 近期,浙江省信息技术课程改革方案出台,Python言语现已断 ...

随机推荐

  1. IOS开发---菜鸟学习之路--(十四)-将BASE64图片转换成Image

    本文基本全部都是代码 首先是.H文件 #import <Foundation/Foundation.h> @interface Base64AndImageHelp : NSObject ...

  2. 拼多多2018校招编程题汇总 Python实现

    题目原址 列表补全 在商城的某个位置有一个商品列表,该列表是由L1.L2两个子列表拼接而成.当用户浏览并翻页时,需要从列表L1.L2中获取商品进行展示.展示规则如下: 用户可以进行多次翻页,用offs ...

  3. HDU6438 Buy and Resell 解题报告(一个有趣的贪心问题的严格证明)

    写在前面 此题是一个很容易想到的贪心题目,但是正确性的证明是非常复杂的.然而,目前网上所有题解并未给出本题贪心算法的任何正确性证明,全部仅停留在描述出一个贪心算法.本着对算法与计算机科学的热爱(逃), ...

  4. [POJ1160] Post Office [四边形不等式dp]

    题面: 传送门 思路: dp方程实际上很好想 设$dp\left[i\right]\left[j\right]$表示前$j$个镇子设立$i$个邮局的最小花费 然后状态转移: $dp\left[i\ri ...

  5. hdu 4096 判断路径

    思路:将每个关系当成一条有向边,查询时就判断之间存在路径. #include<iostream> #include<cstdio> #include<cstring> ...

  6. linux系统——日志文件系统及性能分析

    Linux日志文件系统及性能分析 日志文件系统可以在系统发生断电或者其它系统故障时保证整体数据的完整性,Linux是目前支持日志文件系统最多的操作系统之一,本文重点研究了Linux常用的日志文件系统: ...

  7. ionic2实战-使用Chart.js

    前言 Chart.js官网 Chart.js中文文档 安装Chart.js 执行cnpm install typings -g,全局安装Typings 执行typings search chart.j ...

  8. 321. Create Maximum Number 解题方法详解

    321. Create Maximum Number 题目描述 Given two arrays of length m and n with digits 0-9 representing two ...

  9. CDOJ 1256 二维前缀和处理

    昊昊喜欢运动 他NN 天内会参加MM 种运动(每种运动用一个[1,m][1,m] 的整数表示) 舍友有QQ 个问题 问昊昊第ll 天到第rr 天参加了多少种不同的运动 Input 输入两个数NN , ...

  10. java连接adsl

    http://blog.csdn.net/qq_28784775/article/details/54134169#comments