Python知识总结

1、列表生成式

​   在实际开发过程中,当需要获取一个连续列表时,可直接使用range(3,10),但是如果获取该列表中每个数据的平方时,通常可以通过for循环来解决这个问题,如下面的方法一。由于python中存在内置函数,使用循环过于繁琐,python中的列表生成式可以一句语句代替循环生成的list。

def cal(a):
return a**2+3

#方法一(循环):
lst=[]
for i in range(10):
lst.append(cal(i)) #方法二(列表生成式):
lst=[cal(i) for i in range(10)]

   在使用列表生成式时,可以进行条件筛选,例如 [i for i in range(10) if i%2==0] ,通过这种方式来筛选列表中的偶数。

​   也可以进行双重循环,例如 [i*j for i in range(1,5) for j in range(6,9)] 。通过该循环获取数据乘积的列表。

2、键盘输入数据转换

​   python通过键盘输入数据,数据类型为字符串类型, a=input() ,当需要输入多个数据时,可通过空格等字符进行区分, b=a.split() ,如果是通过其余字符进行区分的,在split()中插入指定字符。也可以通过 a.split('',1) 来控制分解次数。

  当需要输入的为整型时,可以使用map()函数进行数据类型的转换。map()会根据提供的函数对指定序列做映射。 c=list(map(int,input().split())) 得到一个整型的列表,map会将输入切分之后的每个数据进行int类型的转换。

​ 也可以对列表进行自动解包,例如,当输入的数据切分之后为三个值时,将分解之后的每个值分别赋予a、b、c, a,b,c=list(map(int,input().split())) 。

3、英文字母

(1)Python中 swapcase()  方法用于对字符串的大小写字母进行转换。 str1.swapcase() 。

(2)Python中获取所有大小写字母。

(3)判断是否为字母通过 a.isalpha() ,输出的结果为一个Ture或False。

import string

str1='adW7djk25RES'
#大小写字母相互转换 print(str1.swapcase())

#小写字母
lower=string.ascii_lowercase
#大写字母
upper=string.ascii_uppercase
print(lower,upper)

#字母的判断并获取非字母数量
print(sum([not a.isalpha() for a in str1]))
4、数组的使用

​   广播(Broadcast)是 numpy 对不同形状(shape)的数组进行数值计算的方式, 对数组的算术运算通常在相应的元素上进行。

import numpy as np

array = np.random.rand(10)#随机生成一个数组
print(array)
#广播,5与一维数组中的每个元素相加
print(array+5)

#两个一维数组相加,对应位置相加
array1 = np.array([1,2,3,4])
array2 = np.array([5,6,7,8])
arraysum = array1 + array2
print(arraysum)

#两个不同维度的进行相加
a = np.array([[ 0, 0, 0],[10,10,10],[20,20,20],[30,30,30]])
b = np.array([1,2,3]) print(a + b)

输出结果如下:

  numpy的相关计算

import numpy as np

lst=range(1,5)
lst_mean=np.mean(lst)#均值
lst_var=np.var(lst)#方差
lst_std=np.std(lst)#标准差
lst_prod=np.prod(lst)#连乘积
lst_cumsum=np.cumsum(lst)#累积和
lst_cumprod=np.cumprod(lst)#累积积
5、if…else的使用
"pass" if score>60 else "fail"

#相当于下面多行语句
if score>60:
print("pass")
else:
print("fail")
6、math()

fabs() 方法返回数字的绝对值,fabs()是不能直接访问的,需要导入 math 模块,通过静态对象调用该方法。

import math
print(math.fabs(-45))
7、True、False

True在计算中相当于1,False在计算中相当于0。3+True=4,可直接用于计算。

8、字符串翻转

(1)给定一个字符串,然后将其翻转,逆序输出。

(2)使用 reversed(),然后使用 join() 方法用于将序列中的元素以指定的字符连接生成一个新的字符串。

s='ABCDabcd'
u=s[::-1]
print(u)

t=''.join(reversed(s))
print(t)
9、循环语句

  for 实例中使用了 break 语句,break 语句用于跳出当前循环体。对于不满足循环条件的,可以通过else进行其他条件操作。

sites = ["Baidu", "Google","Runoob","Taobao"]
for site in sites:
if site == "Runoob":
print("啦啦啦!")
break
print("循环数据 " + site)
else:
print("没有循环数据!")

  在 while … else 在条件语句为 false 时执行 else 的语句块:

count = 0
while count < 5:
print (count, " 小于 5")
count = count + 1
else:
print (count, " 大于或等于 5")
 

python列表生成式、键盘输入及类型转换、字符串翻转、字母大小写、数组广播、循环语句等基础问题的更多相关文章

  1. Python列表、元组、字典和字符串的常用函数

    Python列表.元组.字典和字符串的常用函数 一.列表方法 1.ls.extend(object) 向列表ls中插入object中的每个元素,object可以是字符串,元组和列表(字符串“abc”中 ...

  2. Python列表生成式(入门9)

    转载请标明出处: http://www.cnblogs.com/why168888/p/6407984.html 本文出自:[Edwin博客园] Python列表生成式 1. 生成列表 L = [] ...

  3. Python 列表生成式 & 字典生成式

    Python 列表生成式 & 字典生成式 通过生成式可以更加简洁地生成列表和字典 列表生成式 对比 直接生成数据后加入列表示例: user_list = list() for i in ran ...

  4. 【转】Python 列表生成式

    原文:https://blog.csdn.net/heartyhu/article/details/50988007 1. 生成列表 要生成list [1, 2, 3, 4, 5, 6, 7, 8, ...

  5. python 列表生成式、lower()和upper()的使用

    参考: http://www.liaoxuefeng.com/wiki/001374738125095c955c1e6d8bb493182103fac9270762a000/0013868196389 ...

  6. [转载] Python 列表(list)、字典(dict)、字符串(string)常用基本操作小结

    创建列表 sample_list = ['a',1,('a','b')] Python 列表操作 sample_list = ['a','b',0,1,3] 得到列表中的某一个值 value_star ...

  7. Python 列表(list)、字典(dict)、字符串(string)常用基本操作小结

    创建列表 sample_list = ['a',1,('a','b')] Python 列表操作 sample_list = ['a','b',0,1,3] 得到列表中的某一个值 value_star ...

  8. Python 列表生成式、生成器、迭代器

    列表生成式 列表生成式即List Comprehensions,是Python内置的非常简单却强大的可以用来创建list的生成式. 如果要生成[1x1, 2x2, 3x3, ..., 10x10]怎么 ...

  9. python列表生成式

    在Python编程中,list列表应用的比较广泛,而列表生成式是一个非常强大但是使用很简单的功能. 比如要生成1到100的数组列表[1,2,3,4......,97,98,99,100],可以使用li ...

随机推荐

  1. learning scala extracors example

    object Twice { def apply(x: Int): Int = x * def unapply(z: Int): Option[Int] = == ) Some(z / ) else ...

  2. hibernate的持久化类、主键生成策略

    一.hibernate的持久化类 1.什么是持久化类: 持久化:将数据存储到关系型数据库. 持久化类:与数据库中的数据表建立了某种关系的java类.(持久化类=javabean+映射配置文件) 2.持 ...

  3. hasura graphql-engine 最近版本的一些更新

    好久没有在关注hasura graphql-engine 了,从最新的release 信息可以看到graphql-engine 已经beta 阶段了,而且目前是v1.0.0-beta.2 估计离生产可 ...

  4. Css3美化【让你的网页独一无二!】

    一.span标签:能让某几个文字或者某个词语凸显出来  <p>         今天是11月份的<span>第一天</span>,地铁卡不打折了     </ ...

  5. 【0521模拟赛】小Z爱数学

    题目描述 小Z想求F(n,k),F(n,k)表示n的所有因数pi中,满足n/pi <= k 的和. 小Z发现还是很水,所以他决定加大难度. 求 小Z还准备了很多个询问.现在你来解决一下吧. 输入 ...

  6. 【POJ2632】Crashing Robots

    题目传送门 本题知识点:模拟 模拟机器人的运作过程,分别有三种功能,L 则是左转90°,R 则是右转90°,L 则是前进1格.让我们去模拟并判断它们的状态. 输入: 第一行是测试样例 第二行分别是矩形 ...

  7. React中兄弟组件传值

    兄弟组件传值 实际上是间接的通过第三方来实现传值,举例,第一个儿子把值传给父亲,父亲在把这个值传给第二个儿子,这样就实现了兄弟组件传值 来看代码: 父组件代码 import React from 'r ...

  8. D3.js的v5版本入门教程(第十二章)—— D3.js中各种精美的图形

    D3.js的v5版本入门教程(第十二章) D3中提供了各种制作常见图形的函数,在d3的v3版本中叫布局,通过d3.layout.xxx,来新建,但是到了v5,新建一个d3中基本的图形的方式变了(我也并 ...

  9. Kubernetes kubectl 命令概述

    kubectl用于运行Kubernetes集群命令的管理工具. 语法 kubectl [command] [TYPE] [NAME] [flags] command:指定要在一个或多个资源执行的操作 ...

  10. [Beta]第八次 Scrum Meeting

    [Beta]第八次 Scrum Meeting 写在前面 会议时间 会议时长 会议地点 2019/5/18 22:00 10min 大运村公寓6F寝室 附Github仓库:WEDO 例会照片 工作情况 ...