Python笔记

摘自:GitHub - jackfrued/Python-100-Days: Python - 100天从新手到大师 https://github.com/jackfrued/Python-100-Days

1.没有switch语句

2.海伦公式计算三角形面积:
p=(a+b+c)/2
area=((p*(p-a)(p-b)(p-c))**0.5

3.运算符
** 指数
// 整除
is ,is not
in ,not in
and,or,not与或非

4.循环

for x in range(101)
for x in range(1,101,2)  #产生1到100的奇数,其中2是步长

5.随机数

import random
num=random.randin(1,100)  #获取1到100之间的随机整数

6.函数

def add(a=0,b=0,c=0):
	return a+b+c

7.模块导入
module1.py

def foo():
	print('hello,world')
	
#这样的话,除非直接运行该模块,否则if条件下的这些代码不会执行
if __name__=='__main__':
	foo()

(1)

from module1 import foo
foo()

(2)

import module1 as m1
m1.foo()

8.字符串

s1='hello '*3
print(s1)	#hello hello hello
s2='world'
s1+=s2
print('ll' in s1)	#True
str2='abc123456'
print(str2[2:5])	#c12
print(str2[2::2])	#c246	相当于print(str2[2:9:2])
print(str2[-3:-1])

9.列表
(1)循环查找

list1=[1,3,5,7,100]
#通过循环用下标遍历列表元素
for index in range(len(list1)):
	print(list1[index])
#直接for循环遍历列表元素
for elem in list1:
	print(elem)
#使用enumerate函数处理列表之后在遍历可以获得索引和值
for index,elem in enumerate(list1):
	print(index,elem)

(2)列表元素操作

list1=[1,3,5,7,100]
#添加元素
list1.append(200)
list1.insert(1,400)
#合并两个列表
#list1.extend([1000,2000])
list1+=[1000,2000]
if 3 in list1:
	list1.remove(3)
list1.pop(0)
list1.clear()

(3)切片
(4)排序

list1=['orange','apple','zoo']
list2=sorted(list1)	#按字母顺序
list3=sorted(list1,reverse=True)	#按字母逆序
list4=sorted(list1,key=len)	#按字符串长度排序
list1=sorted(reverse=True)	#按字母逆序

(5)生成式和生成器

f=[x for x in range(1,10)]
print(f)
f=[x+y for x in 'ABCDE' for y in '1234567']
print(f)
#用列表的生成表达式语法创建列表容器
#用这种语法创建列表之后元素已经准备,所以需要较多内存空间
f=[x**2 for x in range(1,10)]
print(sys.getsizeof(f))
#创建一个生成器对象不占额外的空间,但每次需要数据的时候就
#通过内部的运算得到数据,需要消耗额外的时间
f=(x**2 for x in range(1,10))
print(sys.getsizeof(f))
#通过yield关键字将一个普通函数改造成生成器函数
#通过递归生成斐波那契数列
def fib(n):
	a,b=0,1
	for _ in range(n):
		a,b=b,a+b
		yield a

def main():
	for val in fib(20):
		print(val)

if __name__=='__main__':
	main()
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 2
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值