首页 知识 正文
文章详情

目录:

1.python经典案例

2.python经典例程

3.python100例详解

4.python3例子

5.python例子大全

6.python小例子代码

7.python 简单例子

8.python简单小案例

9.python小案例

10.python中简单的例子

1.python经典案例

告别枯燥,60秒学会一个Python小例子奔着此出发点,我在过去1个月,将平时经常使用的代码段换为小例子,分享出来后受到大家的喜欢今天我完整梳理一遍,总结到这里很感谢这段时间,有3个小伙伴为此库所做出的贡献。

2.python经典例程

入门Python其实很容易,但是我们要去坚持学习,每一天坚持很困难,我相信很多人学了一个星期就放弃了,为什么呢?其实没有好的学习资料给你去学习,你们是很难坚持的,这是小编收集的Python入门学习资料关注,转发,私信小编“01”,即可免费领取!希望对你们有帮助

3.python100例详解

一、基本操作1 链式比较i = 3print(1 < i < 3) # Falseprint(1 < i <= 3) # True2 不用else和if实现计算器from operator import

4.python3例子

*defcalculator(a, b, k):return { +: add, -: sub, *: mul, /: truediv,

5.python例子大全

**: pow }[k](a, b)calculator(1, 2, +) # 3calculator(3, 4, **) # 813 函数链from operator import (add, sub)

6.python小例子代码

defadd_or_sub(a, b, oper):return (add if oper == +else sub)(a, b)add_or_sub(1, 2, -) # -14 求字符串的字节长度

7.python 简单例子

defstr_byte_len(mystr): return (len(mystr.encode(utf-8)))str_byte_len(i love python) # 13(个字节)str_byte_len

8.python简单小案例

(字符) # 6(个字节)5 寻找第n次出现位置defsearch_n(s, c, n): size = 0for i, x in enumerate(s): if x == c: size +=

9.python小案例

1if size == n: return i return-1print(search_n(“fdasadfadf”, “a”, 3))# 结果为7,正确print(search_n(“fdasadfadf”, “a”, 30))# 结果为-1,正确

10.python中简单的例子

6 去掉最高最低求平均defscore_mean(lst): lst.sort() lst2=lst[1:(len(lst)-1)] return round((sum(lst2)/len(lst2)),

2)score_mean([9.1, 9.0,8.1, 9.7, 19,8.2, 8.6,9.8]) # 9.077 交换元素defswap(a, b):return b, aswap(1, 0) # (0,1)

二、基础算法1 二分搜索def binarySearch(arr, left, right, x): whileleft <= right: mid = int(left + (right

– left) / 2); # 找到中间位置求中点写成(left+right)/2更容易溢出,所以不建议这样写 # 检查x是否出现在位置mid if arr[mid] == x: 。

print(found %d 在索引位置%d 处 %(x,mid)) return mid # 假如x更大,则不可能出现在左半部分 elif arr[mid] < x:

left = mid + 1 #搜索区间变为[mid+1,right] print(区间缩小为[%d,%d] %(mid+1,right)) elif x

right = mid – 1 #搜索区间变为[left,mid-1] print(区间缩小为[%d,%d] %(left,mid-1)) return -12 距离矩阵x,y

=mgrid[0:5,0:5]list(map(lambdaxe,ye:[(ex,ey)forex,eyinzip(xe,ye)],x,y))[[(0,0),(0,1),(0,2),(0,3),(0,4

)],[(1,0),(1,1),(1,2),(1,3),(1,4)],[(2,0),(2,1),(2,2),(2,3),(2,4)],[(3,0),(3,1),(3,2),(3,3),(3,4)],[(4,

0),(4,1),(4,2),(4,3),(4,4)]]三、列表1 打印乘法表for i in range(1,10): for j in range(1,i+1): print({0}*{1}={2}

.format(j,i,j*i),end=”\t”) print()结果:1*1=11*2=22*2=41*3=32*3=63*3=91*4=42*4=83*4=124*4=161*5=52*5=10

3*5=154*5=205*5=251*6=62*6=123*6=184*6=245*6=306*6=361*7=72*7=143*7=214*7=285*7=356*7=427*7=491*8=82*8=16

3*8=244*8=325*8=406*8=487*8=568*8=641*9=92*9=183*9=274*9=365*9=456*9=547*9=638*9=729*9=812 嵌套数组完全展开from

collections.abc import *defflatten(input_arr, output_arr=None):if output_arr isNone: output_arr = []

for ele in input_arr: if isinstance(ele, Iterable): # 判断ele是否可迭代 flatten(ele, output_arr) # 尾数递归 else: output_arr.append(ele) # 产生结果 return output_arrflatten([[1,2,3],[4,5]], [6,7]) # [6, 7, 1, 2, 3, 4, 5]

3 将list等分为子组from math import ceildef divide(lst, size): if size <= 0: return [lst] return

[lst[i * size:(i+1)*size] for i in range(0, ceil(len(lst) / size))]r = divide([1, 3, 5, 7, 9], 2) #

[[1, 3], [5, 7], [9]]4 生成fibonacci序列前n项deffibonacci(n):if n <= 1: return [1] fib = [1, 1]

while len(fib) < n: fib.append(fib[len(fib) – 1] + fib[len(fib) – 2]) return fibfibonacci(5

) # [1, 1, 2, 3, 5]5 过滤掉各种空值deffilter_false(lst):return list(filter(bool, lst))filter_false([None, 0

, False, , [], ok, [1, 2]])# [ok, [1, 2]]6 返回列表头元素defhead(lst):return lst[0] if len(lst) > 0else Nonehead([])

# Nonehead([3, 4, 1]) # 37 返回列表尾元素deftail(lst):return lst[-1] if len(lst) > 0else Noneprint(tail([]))

# Noneprint(tail([3, 4, 1])) # 18 对象转换为可迭代类型from collections.abc import Iterabledef cast_iterable(val

): returnvalif isinstance(val, Iterable) else [val]cast_iterable(foo)# foocast_iterable(12)# [12]cast_iterable({

foo: 12})# {foo: 12}9 求更长列表defmax_length(*lst):returnmax(*lst,key=lambdav:len(v))r=max_length([1,2,3],

[4,5,6,7],[8])#[4,5,6,7]10 出现最多元素defmax_frequency(lst):returnmax(lst,default=列表为空,key=lambdav:lst.count(v))lst

=[1,3,3,2,1,1,2]max_frequency(lst)# 1 11 求多个列表的最大值defmax_lists(*lst):returnmax(max(*lst,key=lambdav:max(v)))max_lists([1,

2,3],[6,7,8],[4,5])# 812 求多个列表的最小值defmin_lists(*lst):returnmin(min(*lst,key=lambdav:max(v)))min_lists([1,

2,3],[6,7,8],[4,5])# 113 检查list是否有重复元素defhas_duplicates(lst):returnlen(lst)==len(set(lst))x=[1,1,2,2,

3,2,3,4,5,6]y=[1,2,3,4,5]has_duplicates(x)# Falsehas_duplicates(y) # True14 求列表中所有重复元素fromcollections

importCounterdeffind_all_duplicates(lst):c=Counter(lst)returnlist(filter(lambdak:c[k]>1,c))find_all_duplicates([1,

2,2,3,3,3])# [2,3]15 列表反转defreverse(lst):returnlst[::-1]reverse([1,-2,3,4,1,2])#[2,1,4,3,-2,1]16 浮点数等差数列

def rang(start, stop, n): start,stop,n = float(%.2f % start), float(%.2f % stop),int(%.d % n) step = (

stop-start)/n lst = [start] while n > 0: start,n = start+step,n-1 lst.append(round

((start), 2)) return lstrang(1, 8, 10) # [1.0, 1.7, 2.4, 3.1, 3.8, 4.5, 5.2, 5.9, 6.6, 7.3, 8.0]四、字典

1 字典值最大的键值对列表defmax_pairs(dic):if len(dic) == 0: return dic max_val = max(map(lambda v: v[1

], dic.items())) return [item for item in dic.items() if item[1] == max_val]max_pairs({a: -10, b:

5, c: 3, d: 5})# [(b, 5), (d, 5)]2 字典值最小的键值对列表def min_pairs(dic): iflen(dic) == 0: return [] min_val = min(

map(lambda v: v[1], dic.items())) return [item for item in dic.items() if item[1] == min_val]min_pairs({}) # []r = min_pairs({

a: -10, b: 5, c: 3, d: 5})print(r) # [(b, 5), (d, 5)]3 合并两个字典def merge_dict2(dic1, dic2): return {**dic1, **dic2} # python3

.5后支持的一行代码实现合并字典merge_dict({a: 1, b: 2}, {c: 3}) # {a: 1, b: 2, c: 3}4 求字典前n个最大值fromheapqimportnlargest#

返回字典d前n个最大值对应的键deftopn_dict(d,n):returnnlargest(n,d,key=lambdak:d[k])topn_dict({a:10,b:8,c:9,d:10},3)

# [a, d, c]5 求最小键值对d={a:-10,b:5, c:3,d:5}min(d.items(),key=lambda x:x[1]) #(a, -10)五、集合1 互为变位词from collections

import Counter# 检查两个字符串是否 相同字母异序词,简称:互为变位词def anagram(str1, str2): return Counter(str1) == Counter(str2)anagram(

eleven+two, twelve+one) # True 这是一对神器的变位词anagram(eleven, twelve) # False六、文件操作1 查找指定文件格式文件import osdef find_file(work_dir,extension=

jpg): lst = [] for filename inos.listdir(work_dir): print(filename) splits = os.path

.splitext(filename) ext = splits[1] # 拿到扩展名 if ext == .+extension: lst.append(filename)

return lstfind_file(.,md) # 返回所有目录下的md文件七、正则和爬虫1 爬取天气数据并解析温度值素材来自朋友袁绍import requestsfrom lxml import etreeimport pandas

as pdimport reurl = http://www.weather.com.cn/weather1d/101010100.shtml#inputwith requests.get(url) as

res: content = res.content html = etree.HTML(content)通过lxml模块提取值,lxml比beautifulsoup解析在某些场合更高效location

= html.xpath(//*[@id=”around”]//a[@target=”_blank”]/span/text())temperature = html.xpath(//*[@id=”around”]/div/ul/li/a/i/text()

市规划展览馆,

什刹海, 南锣鼓巷, 天坛公园, 北海公园, 景山公园, 北京海洋馆][11/-5°C, 14/-5°C, 12/-6°C, 12/-5°C, 11/-1°C, 11/-5°C, 8/-7°C, 13/-2°C

, 8/-6°C, 5/-9°C, 14/-6°C, 11/-4°C, 13/-3°C, 13/-3°C, 12/-3°C, 12/-3°C, 13/-3°C, 12/-2°C, 12/-3°C, 13/-3°C

, 12/-2°C, 12/-2°C, 12/-2°C, 12/-3°C]df = pd.DataFrame({location:location, temperature:temperature})print

(温度列)print(df[temperature])正则解析温度值df[high] = df[temperature].apply(lambda x: int(re.match((-?[0-9]*?)/-?[0-9]*?°C

, x).group(1) ) )df[low] = df[temperature].apply(lambda x: int(re.match(-?[0-9]*?/(-?[0-9]*?)°C, x).group

(1) ) )print(df)详细说明子字符创捕获除了简单地判断是否匹配之外,正则表达式还有提取子串的强大功能用 () 表示的就是要提取的分组(group)比如: ^(\d{3})-(\d{3,8})$ 分别定义了两个组,可以直接从匹配的字符串中提取出区号和本地号码。

m = re.match(r^(\d{3})-(\d{3,8})$, 010-12345)print(m.group(0))print(m.group(1))print(m.group(2))# 010-12345# 010# 12345

如果正则表达式中定义了组,就可以在 Match 对象上用 group() 方法提取出子串来注意到 group(0) 永远是原始字符串, group(1) 、 group(2) ……表示第1、2、……个子串。

最终结果Name:temperature,dtype:objectlocationtemperaturehighlow0香河11/-5°C11-51涿州14/-5°C14-52唐山12/-6°C12-63

沧州12/-5°C12-54天津11/-1°C11-15廊坊11/-5°C11-56太原8/-7°C8-77石家庄13/-2°C13-28涿鹿8/-6°C8-69张家口5/-9°C5-910保定14/-6°C

遗址公园13

/-3°C13-317北京市规划展览馆12/-2°C12-218什刹海12/-3°C12-319南锣鼓巷13/-3°C13-320天坛公园12/-2°C12-221北海公园12/-2°C12-222景山公园

12/-2°C12-223北京海洋馆12/-3°C12-32 批量转化驼峰格式import redef camel(s): s = re.sub(r”(\s|_|-)+”, ” “, s).title().replace(

” “, “”) return s[0].lower() + s[1:]# 批量转化def batch_camel(slist): return [camel(s) for s in slist]batch_camel([student_id, student\tname, student-add]) #[studentId, studentName, studentAdd]

八、绘图1 turtle绘制奥运五环图结果:

2 turtle绘制漫天雪花结果:

3 4种不同颜色的色块,它们的颜色真的不同吗?

4 词频云图import hashlibimport pandas as pdfrom wordcloud import WordCloudgeo_data=pd.read_excel(r”../data/geo_data.xlsx”

)words = ,.join(x for x in geo_data[city] if x != []) #筛选出非空列表值wc = WordCloud( background_color=”green”, #背景颜色”green”绿色 max_words=100, #显示最大词数 font_path=./fonts/simhei.ttf, #显示中文 min_font_size=5, max_font_size=100, width=500 #图幅宽度 )x = wc.generate(words)x.to_file(../data/geo_data.png)

八、生成器1 求斐波那契数列前n项(生成器版)deffibonacci(n): a, b = 1, 1for _ in range(n): yield a a, b = b, a + blist(fibonacci(

5)) # [1, 1, 2, 3, 5]2 将list等分为子组(生成器版)from math import ceildef divide_iter(lst, n): if n <= 0:

yield lst return i, div = 0, ceil(len(lst) / n) while i < n: yield lst[i * div: (i +

1) * div] i += 1list(divide_iter([1, 2, 3, 4, 5], 0)) # [[1, 2, 3, 4, 5]]list(divide_iter([1,

2, 3, 4, 5], 2)) # [[1, 2, 3], [4, 5]]九、keras1 Keras入门例子import numpy as npfrom keras.models import Sequentialfrom keras.layers

import Densedata = np.random.random((1000, 1000))labels = np.random.randint(2, size=(1000, 1))model = Sequential()model.add(Dense(

32, activation=relu, input_dim=100))model.add(Dense(1, activation=sigmoid

))model.compile(optimize=rmsprop, loss=binary_crossentropy, metrics=[accuracy])model.fit(

data, labels, epochs=10, batch_size=32)predictions = model.predict(data)

相关推荐
四月实战公开课丨高效公式让小白也能做出大神级项目作品
目录: 1.四月攻势 2.四月战报 1.四月攻势 全世界风靡的网课  如何进行1V1、1VN通讯?  如何用C4D做出dribbble大神作…
头像
知识 2024-06-06
Python学习教程公开课:好玩的Python
目录: 1.python入门公开课 2.python讲课视频 3.python课程入门 4.python的优质课 5.python 课程真的…
头像
知识 2024-06-06
MIT Python 公开课第三课要点-算法是怎样演进的
目录: 1.python算法课程 2.python算法教程这本书怎么样 3.python 算法导论 4.python算法基础 5.pytho…
头像
知识 2024-06-06
MIT Python 公开课第四课要点-函数也是一个对象
目录: 1.mit python 2.mit python 公开课 3.mit python凯撒密码 4.mit python作业答案 5.…
头像
知识 2024-06-06
清华教授用了12小时讲完的Python,整整311集,拿走不谢!
目录: 1.清华大学python视频 2.清华python用什么课本 3.python清华大学学生用书 4.清华大学出版社python 5.…
头像
知识 2024-06-06
自学c4d要多久才能出去工作 学习c4d建模渲染
目录: 1.自学c4d需要多久 2.学好c4d需要多久 3.c4d自学能学会么 4.自学c4d能找到工作吗 5.c4d学多久可以找工作 6.…
头像
知识 2024-06-06