100 个 Python 小例子(基于 Python3)下篇

100 个 Python 小例子(练习题) 实例001:数字组合 题目:有四个数字:1、2、3、4,能组成多少个互不相同且无重复数字的三位数?各是多少? 程序分析:遍历全部可能,把有重复的剃掉。 total=0 for i in range(1,5): for j in range(1,5): for k in range(1,5): if ((i!=j)and(j!=k)and(k!=i)): print(i,j,k) total 阅读详情

实例051:按位与

题目:学习使用按位与 & 。

程序分析:0&0=0; 0&1=0; 1&0=0; 1&1=1。

a=0o77
print(a)
b=a&3
print(b)
b=b&7
print(b)
复制代码

实例052:按位或

题目:学习使用按位或 | 。

程序分析:0|0=0; 0|1=1; 1|0=1; 1|1=1

a=0o77
print(a|3)
print(a|3|7)
复制代码

实例053:按位异或

题目:学习使用按位异或 ^ 。

程序分析:0^0=0; 0^1=1; 1^0=1; 1^1=0

a=0o77
print(a^3)
print(a^3^7)
复制代码

实例054:位取反、位移动

如果大家在学习中遇到困难,想找一个python学习交流环境,可以加入我们的python圈,裙号930900780,可领取python学习资料,会节约很多时间,减少很多遇到的难题。

题目:取一个整数a从右端开始的4〜7位。

程序分析:可以这样考虑: (1)先使a右移4位。 (2)设置一个低4位全为1,其余全为0的数。可用~(~0<<4) (3)将上面二者进行&运算。

a=int(input('输入一个数字: '))
b=0                 #     0
b=~b                #     1
b=b<<4              # 10000
b=~b                #  1111
c=a>>4
d=c&b
print('a:',bin(a))
print('b:',bin(b))
print('c:',bin(c))
print('d:',bin(d))
复制代码

实例055:按位取反

题目:学习使用按位取反~。

程序分析:~0=1; ~1=0;

print(~234)
print(~~234)
复制代码

实例056:画圈

题目:画图,学用circle画圆形。   

程序分析:无。

from tkinter import *
canvas=Canvas(width=800,height=600,bg='yellow')
canvas.pack(expand=YES,fill=BOTH)
k=1
j=1
for i in range(26):
    canvas.create_oval(310-k,250-k,310+k,250+k,width=1)
    k+=j
    j+=0.3
mainloop()
复制代码

实例057:画线

题目:画图,学用line画直线。

程序分析:无。

if __name__ == '__main__':
    from tkinter import *
 
    canvas = Canvas(width=300, height=300, bg='green')   
    canvas.pack(expand=YES, fill=BOTH)                  
    x0 = 263
    y0 = 263
    y1 = 275
    x1 = 275
    for i in range(19):
        canvas.create_line(x0,y0,x0,y1, width=1, fill='red')
        x0 = x0 - 5
        y0 = y0 - 5
        x1 = x1 + 5
        y1 = y1 + 5
 
    x0 = 263
    y1 = 275
    y0 = 263
    for i in range(21):
        canvas.create_line(x0,y0,x0,y1,fill = 'red')
        x0 += 5
        y0 += 5
        y1 += 5
 
    mainloop()
复制代码

实例058:画矩形

题目:画图,学用rectangle画方形。   

程序分析:无。

if __name__ == '__main__':
    from tkinter import *
    root = Tk()
    root.title('Canvas')
    canvas = Canvas(root,width = 400,height = 400,bg = 'yellow')
    x0 = 263
    y0 = 263
    y1 = 275
    x1 = 275
    for i in range(19):
        canvas.create_rectangle(x0,y0,x1,y1)
        x0 -= 5
        y0 -= 5
        x1 += 5
        y1 += 5
        
    canvas.pack()
    root.mainloop()
复制代码

实例059:画图(丑)

题目:画图,综合例子。  

程序分析:丑。

if __name__  == '__main__':
    from tkinter import *
    canvas = Canvas(width = 300,height = 300,bg = 'green')
    canvas.pack(expand = YES,fill = BOTH)
    x0 = 150
    y0 = 100
    canvas.create_oval(x0 - 10,y0 - 10,x0 + 10,y0 + 10)
    canvas.create_oval(x0 - 20,y0 - 20,x0 + 20,y0 + 20)
    canvas.create_oval(x0 - 50,y0 - 50,x0 + 50,y0 + 50)
    import math
    B = 0.809
    for i in range(16):
        a = 2 * math.pi / 16 * i
        x = math.ceil(x0 + 48 * math.cos(a))
        y = math.ceil(y0 + 48 * math.sin(a) * B)
        canvas.create_line(x0,y0,x,y,fill = 'red')
    canvas.create_oval(x0 - 60,y0 - 60,x0 + 60,y0 + 60)
    

    for k in range(501):
        for i in range(17):
            a = (2 * math.pi / 16) * i + (2 * math.pi / 180) * k
            x = math.ceil(x0 + 48 * math.cos(a))
            y = math.ceil(y0 + 48 + math.sin(a) * B)
            canvas.create_line(x0,y0,x,y,fill = 'red')
        for j in range(51):
            a = (2 * math.pi / 16) * i + (2* math.pi / 180) * k - 1
            x = math.ceil(x0 + 48 * math.cos(a))
            y = math.ceil(y0 + 48 * math.sin(a) * B)
            canvas.create_line(x0,y0,x,y,fill = 'red')
    mainloop()
复制代码

实例060:字符串长度

题目:计算字符串长度。  

程序分析:无。

s='zhangguang101'
print(len(s))
复制代码

实例061:杨辉三角

题目:打印出杨辉三角形前十行。  

程序分析:无。

def generate(numRows):
    r = [[1]]
    for i in range(1,numRows):
        r.append(list(map(lambda x,y:x+y, [0]+r[-1],r[-1]+[0])))
    return r[:numRows]
a=generate(10)
for i in a:
    print(i)
复制代码

实例062:查找字符串

题目:查找字符串。  

程序分析:无。

s1='aabbxuebixuebi'
s2='ab'
s3='xue'
print(s1.find(s2))
print(s1.find(s3))
复制代码

实例063:画椭圆

题目:画椭圆。 

程序分析:使用 tkinter。

if __name__ == '__main__':
    from tkinter import *
    x = 360
    y = 160
    top = y - 30
    bottom = y - 30
    
    canvas = Canvas(width = 400,height = 600,bg = 'white')
    for i in range(20):
        canvas.create_oval(250 - top,250 - bottom,250 + top,250 + bottom)
        top -= 5
        bottom += 5
    canvas.pack()
    mainloop()
复制代码

实例64:画椭圆、矩形

题目:利用ellipse 和 rectangle 画图。。 

程序分析:无。

if __name__ == '__main__':
    from tkinter import *
    canvas = Canvas(width = 400,height = 600,bg = 'white')
    left = 20
    right = 50
    top = 50
    num = 15
    for i in range(num):
        canvas.create_oval(250 - right,250 - left,250 + right,250 + left)
        canvas.create_oval(250 - 20,250 - top,250 + 20,250 + top)
        canvas.create_rectangle(20 - 2 * i,20 - 2 * i,10 * (i + 2),10 * ( i + 2))
        right += 5
        left += 5
        top += 10

    canvas.pack()
    mainloop()
复制代码

实例065:画组合图形

题目:一个最优美的图案。  

程序分析:无。

import math
from tkinter import *

class PTS:
    def __init__(self):
        self.x = 0
        self.y = 0
points = []

def LineToDemo():
    screenx = 400
    screeny = 400
    canvas = Canvas(width = screenx,height = screeny,bg = 'white')

    AspectRatio = 0.85
    MAXPTS = 15
    h = screeny
    w = screenx
    xcenter = w / 2
    ycenter = h / 2
    radius = (h - 30) / (AspectRatio * 2) - 20
    step = 360 / MAXPTS
    angle = 0.0
    for i in range(MAXPTS):
        rads = angle * math.pi / 180.0
        p = PTS()
        p.x = xcenter + int(math.cos(rads) * radius)
        p.y = ycenter - int(math.sin(rads) * radius * AspectRatio)
        angle += step
        points.append(p)
    canvas.create_oval(xcenter - radius,ycenter - radius,
                       xcenter + radius,ycenter + radius)
    for i in range(MAXPTS):
        for j in range(i,MAXPTS):
            canvas.create_line(points[i].x,points[i].y,points[j].x,points[j].y)

    canvas.pack()
    mainloop()
if __name__ == '__main__':
    LineToDemo()
复制代码

实例066:三数排序

题目:输入3个数a,b,c,按大小顺序输出。   

程序分析:同实例005。

raw=[]
for i in range(3):
    x=int(input('int%d: '%(i)))
    raw.append(x)
    
for i in range(len(raw)):
    for j in range(i,len(raw)):
        if raw[i]>raw[j]:
            raw[i],raw[j]=raw[j],raw[i]
print(raw)


raw2=[]
for i in range(3):
    x=int(input('int%d: '%(i)))
    raw2.append(x)
print(sorted(raw2))

复制代码

实例067:交换位置

题目:输入数组,最大的与第一个元素交换,最小的与最后一个元素交换,输出数组。

程序分析:无。

li=[3,2,5,7,8,1,5]

li[-1],li[li.index(min(li))]=li[li.index(min(li))],li[-1]

m=li[0]
ind=li.index(max(li))
li[0]=li[ind]
li[ind]=m

print(li)
复制代码

实例068:旋转数列

题目:有n个整数,使其前面各数顺序向后移m个位置,最后m个数变成最前面的m个数

程序分析:无。

from collections import *
li=[1,2,3,4,5,6,7,8,9]
deq=deque(li,maxlen=len(li))
print(li)
deq.rotate(int(input('rotate:')))
print(list(deq))
复制代码

实例069:报数

题目:有n个人围成一圈,顺序排号。从第一个人开始报数(从1到3报数),凡报到3的人退出圈子,问最后留下的是原来第几号的那位。

程序分析:无。

if __name__ == '__main__':
    nmax = 50
    n = int(input('请输入总人数:'))
    num = []
    for i in range(n):
        num.append(i + 1)
 
    i = 0
    k = 0
    m = 0
 
    while m < n - 1:
        if num[i] != 0 : k += 1
        if k == 3:
            num[i] = 0
            k = 0
            m += 1
        i += 1
        if i == n : i = 0
 
    i = 0
    while num[i] == 0: i += 1
    print(num[i])
复制代码

实例070:字符串长度II

题目:写一个函数,求一个字符串的长度,在main函数中输入字符串,并输出其长度。

程序分析:无。

def lenofstr(s):
    return len(s)

print(lenofstr('tanxiaofengsheng'))
复制代码

实例071:输入和输出

题目:编写input()和output()函数输入,输出5个学生的数据记录。

程序分析:无。

N = 3
#stu
# num : string
# name : string
# score[4]: list
student = []
for i in range(5):
    student.append(['','',[]])
 
def input_stu(stu):
    for i in range(N):
        stu[i][0] = input('input student num:\n')
        stu[i][1] = input('input student name:\n')
        for j in range(3):
            stu[i][2].append(int(input('score:\n')))
 
def output_stu(stu):
    for i in range(N):
        print ('%-6s%-10s' % ( stu[i][0],stu[i][1] ))
        for j in range(3):
            print ('%-8d' % stu[i][2][j])
 
if __name__ == '__main__':
    input_stu(student)
    print (student)
    output_stu(student)
复制代码

实例072:创建链表

题目:创建一个链表。

程序分析:原文不太靠谱。

class Node:

    def __init__(self, data):
        self.data = data
        self.next = None

    def get_data(self):
        return self.data

class List:

    def __init__(self, head):
        self.head = head

    def is_empty(self): 
        return self.get_len() == 0

    def get_len(self):  
        length = 0
        temp = self.head
        while temp is not None:
            length += 1
            temp = temp.next
        return length

    def append(self, node):
        temp = self.head
        while temp.next is not None:
            temp = temp.next
        temp.next = node

    def delete(self, index): 
        if index < 1 or index > self.get_len():
            print("给定位置不合理")
            return
        if index == 1:
            self.head = self.head.next
            return
        temp = self.head
        cur_pos = 0
        while temp is not None:
            cur_pos += 1
            if cur_pos == index-1:
                temp.next = temp.next.next
            temp = temp.next

    def insert(self, pos, node):
        if pos < 1 or pos > self.get_len():
            print("插入结点位置不合理")
            return
        temp = self.head
        cur_pos = 0
        while temp is not Node:
            cur_pos += 1
            if cur_pos == pos-1:
                node.next = temp.next
                temp.next =node
                break
            temp = temp.next

    def reverse(self, head):
        if head is None and head.next is None:
            return head
        pre = head
        cur = head.next
        while cur is not None:
            temp = cur.next
            cur.next = pre
            pre = cur
            cur = temp
        head.next = None
        return pre

    def print_list(self, head):
        init_data = []
        while head is not None:
            init_data.append(head.get_data())
            head = head.next
        return init_data

if __name__=='__main__':
    head=Node('head')
    link=List(head)
    for i in range(10):
        node=Node(i)
        link.append(node)
    print(link.print_list(head))
复制代码

实例073:反向输出链表

题目:反向输出一个链表。

程序分析:无。

class Node:

    def __init__(self, data):
        self.data = data
        self.next = None

    def get_data(self):
        return self.data

class List:

    def __init__(self, head):
        self.head = head

    def is_empty(self): 
        return self.get_len() == 0

    def get_len(self):  
        length = 0
        temp = self.head
        while temp is not None:
            length += 1
            temp = temp.next
        return length

    def append(self, node):
        temp = self.head
        while temp.next is not None:
            temp = temp.next
        temp.next = node

    def delete(self, index): 
        if index < 1 or index > self.get_len():
            print("给定位置不合理")
            return
        if index == 1:
            self.head = self.head.next
            return
        temp = self.head
        cur_pos = 0
        while temp is not None:
            cur_pos += 1
            if cur_pos == index-1:
                temp.next = temp.next.next
            temp = temp.next

    def insert(self, pos, node):
        if pos < 1 or pos > self.get_len():
            print("插入结点位置不合理")
            return
        temp = self.head
        cur_pos = 0
        while temp is not Node:
            cur_pos += 1
            if cur_pos == pos-1:
                node.next = temp.next
                temp.next =node
                break
            temp = temp.next

    def reverse(self, head):
        if head is None and head.next is None:
            return head
        pre = head
        cur = head.next
        while cur is not None:
            temp = cur.next
            cur.next = pre
            pre = cur
            cur = temp
        head.next = None
        return pre

    def print_list(self, head):
        init_data = []
        while head is not None:
            init_data.append(head.get_data())
            head = head.next
        return init_data

if __name__=='__main__':
    head=Node('head')
    link=List(head)
    for i in range(10):
        node=Node(i)
        link.append(node)
    print(link.print_list(head))
    print(link.print_list(link.reverse(head)))
复制代码

实例074:列表排序、连接

题目:列表排序及连接。

程序分析:排序可使用 sort() 方法,连接可以使用 + 号或 extend() 方法。

a=[2,6,8]
b=[7,0,4]
a.extend(b)
a.sort()
print(a)
复制代码

实例075:不知所云

题目:放松一下,算一道简单的题目。

程序分析:鬼知道是什么。

if __name__ == '__main__':
    for i in range(5):
        n = 0
        if i != 1: n += 1
        if i == 3: n += 1
        if i == 4: n += 1
        if i != 4: n += 1
        if n == 3: print (64 + i)
复制代码

实例076:做函数

题目:编写一个函数,输入n为偶数时,调用函数求1/2+1/4+...+1/n,当输入n为奇数时,调用函数1/1+1/3+...+1/n

程序分析:无。

def peven(n):
    i = 0
    s = 0.0
    for i in range(2,n + 1,2):
        s += 1.0 / i
    return s
 
def podd(n):
    s = 0.0
    for i in range(1, n + 1,2):
        s += 1.0 / i
    return s
 
def dcall(fp,n):
    s = fp(n)
    return s
 
if __name__ == '__main__':
    n = int(input('input a number: '))
    if n % 2 == 0:
        sum = dcall(peven,n)
    else:
        sum = dcall(podd,n)
    print (sum)
复制代码

实例077:遍历列表

题目:循环输出列表

程序分析:无。

l=['moyu','niupi','xuecaibichi','shengfaji','42']
for i in range(len(l)):
    print(l[i])
复制代码

实例078:字典

题目:找到年龄最大的人,并输出。请找出程序中有什么问题。

程序分析:无。

if __name__ == '__main__':
    person = {"li":18,"wang":50,"zhang":20,"sun":22}
    m = 'li'
    for key in person.keys():
        if person[m] < person[key]:
            m = key
 
    print ('%s,%d' % (m,person[m]))
复制代码

实例079:字符串排序

题目:字符串排序。

程序分析:无。

l=['baaa','aaab','aaba','aaaa','abaa']
l.sort()
print(l)
复制代码

实例080:猴子分桃

题目:海滩上有一堆桃子,五只猴子来分。第一只猴子把这堆桃子平均分为五份,多了一个,这只猴子把多的一个扔入海中,拿走了一份。第二只猴子把剩下的桃子又平均分成五份,又多了一个,它同样把多的一个扔入海中,拿走了一份,第三、第四、第五只猴子都是这样做的,问海滩上原来最少有多少个桃子?

程序分析:无。

if __name__ == '__main__':
    i = 0
    j = 1
    x = 0
    while (i < 5) :
        x = 4 * j
        for i in range(0,5) :
            if(x%4 != 0) :
                break
            else :
                i += 1
            x = (x/4) * 5 +1
        j += 1
    print(x)

    for p in range(5):
        x=(x-1)/5*4
    print(x)
复制代码

实例081:求未知数

题目:809??=800??+9?? 其中??代表的两位数, 809??为四位数,8??的结果为两位数,9??的结果为3位数。求??代表的两位数,及809*??后的结果。

程序分析:无。

a = 809
for i in range(10,100):
    b = i * a
    if b >= 1000 and b <= 10000 and 8 * i < 100 and 9 * i >= 100:
        print(b,' = 800 * ', i, ' + 9 * ', i)


for i in range(10,100):
    if 8*i>99 or 9*i<100:
        continue
    if 809*i==800*i+9*i:
        print(i)
        break
复制代码

实例082:八进制转十进制

题目:八进制转换为十进制

程序分析:无。

n=eval('0o'+str(int(input('八进制输入:'))))
print(n)
复制代码

实例083:制作奇数

题目:求0—7所能组成的奇数个数。

程序分析:

组成1位数是4个。1,3,5,7结尾

组成2位数是7*4个。第一位不能为0

组成3位数是784个。中间随意

组成4位数是788*4个。

if __name__ == '__main__':
    sum = 4
    s = 4
    for j in range(2,9):
        print (sum)
        if j <= 2:
            s *= 7
        else:
            s *= 8
        sum += s
    print('sum = %d' % sum)
复制代码

实例084:连接字符串

题目:连接字符串。

程序分析:无。

delimiter = ','
mylist = ['Brazil', 'Russia', 'India', 'China']
print(delimiter.join(mylist))
复制代码

实例085:整除

题目:输入一个奇数,然后判断最少几个 9 除于该数的结果为整数。

程序分析:999999 / 13 = 76923。

if __name__ == '__main__':
    zi = int(input('输入一个数字:'))
    n1 = 1
    c9 = 1
    m9 = 9
    sum = 9
    while n1 != 0:
        if sum % zi == 0:
            n1 = 0
        else:
            m9 *= 10
            sum += m9
            c9 += 1
    print ('%d 个 9 可以被 %d 整除 : %d' % (c9,zi,sum))
    r = sum / zi
    print ('%d / %d = %d' % (sum,zi,r))
复制代码

实例086:连接字符串II

题目:两个字符串连接程序。

程序分析:无。

a='guangtou'
b='feipang'
print(b+a)
复制代码

实例087:访问类成员

题目:回答结果(结构体变量传递)。

程序分析:无。

if __name__ == '__main__':
    class student:
        x = 0
        c = 0
    def f(stu):
        stu.x = 20
        stu.c = 'c'
    a= student()
    a.x = 3
    a.c = 'a'
    f(a)
    print(a.x,a.c)
复制代码

实例088:打印星号

题目:读取7个数(1—50)的整数值,每读取一个值,程序打印出该值个数的*。

程序分析:无。

for i in range(3):
    print('*'*int(input('input a number: ')))
复制代码

实例089:解码

题目:某个公司采用公用电话传递数据,数据是四位的整数,在传递过程中是加密的,加密规则如下:每位数字都加上5,然后用和除以10的余数代替该数字,再将第一位和第四位交换,第二位和第三位交换。

程序分析:无。

n=input()
n = str(n)
a=[]
for i in range(4):
    a.append((int(n[i])+5)%10)
a[0],a[3]=a[3],a[0]
a[1],a[2]=a[2],a[1]
print ("".join('%s' %s for s in a))

复制代码

实例090:列表详解

题目:列表使用实例。

程序分析:无。

#list  
#新建列表  
testList=[10086,'中国移动',[1,2,4,5]]  
  
#访问列表长度  
print (len(testList)  )
#到列表结尾  
print (testList[1:])
#向列表添加元素  
testList.append('i\'m new here!')  
  
print (len(testList)  )
print (testList[-1]  )
#弹出列表的最后一个元素  
print (testList.pop(1)  )
print (len(testList)  )
print (testList  )
#list comprehension  
#后面有介绍,暂时掠过  
matrix = [[1, 2, 3],  
[4, 5, 6],  
[7, 8, 9]]  
print (matrix  )
print (matrix[1]  )
col2 = [row[1] for row in matrix]#get a  column from a matrix  
print (col2  )
col2even = [row[1] for row in matrix if  row[1] % 2 == 0]#filter odd item  
print (col2even)
复制代码

实例091:time模块

 

题目:时间函数举例1。

程序分析:无。

if __name__ == '__main__':
    import time
    print (time.ctime(time.time()))
    print (time.asctime(time.localtime(time.time())))
    print (time.asctime(time.gmtime(time.time())))
复制代码

实例092:time模块II

题目:时间函数举例2。

程序分析:如何浪费时间。

if __name__ == '__main__':
    import time
    start = time.time()
    for i in range(3000):
        print(i)
    end = time.time()
 
    print (end - start)
复制代码

实例093:time模块III

题目:时间函数举例3。

程序分析:如何浪费时间。

if __name__ == '__main__':
    import time
    start = time.clock()
    for i in range(100):
        print(i)
    end = time.clock()
    print('different is %6.3f' % (end - start))
复制代码

实例094:time模块IV

题目:时间函数举例4。

程序分析:如何浪费时间。

if __name__ == '__main__':
    import time
    import random
    
    play_it = input('do you want to play it.(\'y\' or \'n\')')
    while play_it == 'y':
        c = input('input a character:\n')
        i = random.randint(0,2**32) % 100
        print ('please input number you guess:\n')
        start = time.clock()
        a = time.time()
        guess = int(input('input your guess:\n'))
        while guess != i:
            if guess > i:
                print('please input a little smaller')
                guess = int(input('input your guess:\n'))
            else:
                print('please input a little bigger')
                guess = int(input('input your guess:\n'))
        end = time.clock()
        b = time.time()
        var = (end - start) / 18.2
        print (var)
        # print 'It took you %6.3 seconds' % time.difftime(b,a))
        if var < 15:
            print ('you are very clever!')
        elif var < 25:
            print ('you are normal!')
        else:
            print ('you are stupid!')
        print ('Congradulations')
        print ('The number you guess is %d' % i)
        play_it = input('do you want to play it.')
复制代码

实例095:转换时间格式

题目:字符串日期转换为易读的日期格式。

程序分析:看看就得了,dateutil是个第三方库。

from dateutil import parser
dt = parser.parse("Aug 28 2015 12:00AM")
print (dt)
复制代码

实例096:计算复读次数

题目:计算字符串中子串出现的次数。

程序分析:无。

s1='xuebixuebixuebixuebixuebixuebixuebixue'
s2='xuebi'
print(s1.count(s2))
复制代码

实例097:磁盘写入

题目:从键盘输入一些字符,逐个把它们写到磁盘文件上,直到输入一个 # 为止。

程序分析:无。

if __name__ == '__main__':
    from sys import stdout
    filename = input('输入文件名:\n')
    fp = open(filename,"w")
    ch = input('输入字符串:\n')
    while ch != '#':
        fp.write(ch)
        stdout.write(ch)
        ch = input('')
    fp.close()
复制代码

实例098:磁盘写入II

 

题目:从键盘输入一个字符串,将小写字母全部转换成大写字母,然后输出到一个磁盘文件"test"中保存。

程序分析:无。

if __name__ == '__main__':
    fp = open('test.txt','w')
    string = input('please input a string:\n')
    string = string.upper()
    fp.write(string)
    fp = open('test.txt','r')
    print (fp.read())
    fp.close()
复制代码

实例099:磁盘读写

题目:有两个磁盘文件A和B,各存放一行字母,要求把这两个文件中的信息合并(按字母顺序排列), 输出到一个新文件C中。

程序分析:无。

i = ['a', 'b']
l = [1, 2]
print (dict(zip(i,l)))
复制代码

实例100:列表转字典

题目:列表转换为字典。

程序分析:无。

i = ['a', 'b']
l = [1, 2]
print (dict(zip(i,l)))
复制代码

原例为 Python2.7 版本,重写过程中有不少是随意发挥的,重写运行版本为 Python3.7,原例地址:python-100-examples。

最后多说一句,小编是一名python开发工程师,这里有我自己整理了一套最新的python系统学习教程。想要这些资料的可以进q裙930900780领取。

本文章素材来源于网络,如有侵权请联系删除。

100 个 Python 小例子(基于 Python3)上篇 实例001:数字组合 题目:有四个数字:1、2、3、4,能组成多少个互不相同且无重复数字的三位数?各是多少? 程序分析:遍历全部可能,把有重复的剃掉。 total=0 for i in range(1,5): for j in range(1,5): for k in range(1,5): if ((i!=j)and(j!=k)and(k!=i)): print(i,j,k) total 阅读详情

相关推荐

python编程人工智能小例子,python人工智能100例子

Python 是人工智能(机器学习)的首选编程语言,它拥有众多模块,能完成人工智能开发的所有环节,没有任何一种语言使用起来如此顺手。今天分享我用了将近3周的时间整理出来的 Python 人工智能库,围绕Python所有方向的技术点做的整理,以形成各个领域的知识点汇总,这样就可以按照上面的知识点去找对应的学习资源,保证学得较为全面。

小发猫 2662

普冉(PUYA)单片机开发笔记(3): 使用PY32F003的外部时钟

PY32F003 的时钟没有 PLL,最高工作频率是 32MHz。有网友称其可以工作在 48MHz,还不知道是如何配置的。在 main.c 中自定义 SystemClock_Config() 可以灵活选择时钟源。PY32F003 的 HSI 的频率偏差高达 625PPM,如果需要较为准确的计时的话,需要为其配备 HSE。厂家软件包中的例程有一些 BUG,例如对板载 Push Button (PB)的初始化和对 LED3 的初始化中都用到了。

Tomcat0130 - 代码生涯 5440

使用 PY32F003F18P 的实验代码包,开发环境:Keil uVision 5.2.8,亲测可用

PY32F003F18P 的实验代码,包括 MCU 的时钟选择,UART 通信,高级定时器 TIM1 和通用定时器 TIM16的使用,模数转换器(ADC)的使用,嵌入式 FLASH 的读写,内部集成总线(I2C)的使用和外部中断捕获。UART,ADC 和 I2C 实验包括了轮询式(Polling),中断式(IT)和通过 DMA 等多种方式。代码实现了上述功能。 在 main.h 中可以选择代码的开关,可以选择多个功能。 软件包中还包括了 FreeRTOS 2022.11 版本的源代码。 对照我的 优快云 专栏博客《普冉(PUYA)开发笔记》1-12,可以轻松地完成各项实验的编译和正确运行。 谬误之处,欢迎指正。

python实战训练---基础练习(11)

文章目录按位与按位或按位异或位取反、位移动按位取反 按位与 题目: 学习使用按位与 &amp; 。 程序分析 : 0&amp;0=0; 0&amp;1=0; 1&amp;0=0; 1&amp;1=1。 a=0o77 print(a) b=a&amp;3 print(b) b=b&amp;7 print(b) 按位或 题目: 学习使用按位或 | 。 程序分析: 0|0=0; 0|1=1; 1|0=1; 1|1=1 a=0o77 print(a|3) print(a|3|7) 按位异或 题目: 学习使用按位

xdc1812547560的博客 1986

PY32F003的Demo工程压缩包,含所有HAL-Drivers

把Drivers聚合到一起,便于搬运和移植。本资源基于PUYA的厂家软件包,进行了资源文件的整合,利用一个压缩包就可以开始PY32F0xx系列单片机的开发了。这个压缩包需要在Keil uVision环境下使用,作者使用的版本是Keil uVision 5.2.8。 EWMDK目录下有uProj文件,双击就可直接打开。 免费!

【万字长文】学习Armv8架构虚拟化一篇就够了

这里我们将介绍一些基础的Hypervisor和虚拟化的理论知识。如果你已经有一定的基础或是已经熟悉了这些概念,可以跳过这部分内容。我们用Hypervisor这个词来定义一种负责创建,管理以及调度虚拟机(Virtual Machines, VMs)的软件。Stage 2 转换允许Hypervisor控制虚拟机的内存视图。具体来说,其可以控制虚拟机是否可以访问特定的某一块物理内存,以及该内存块出现在虚拟机内存空间的位置。这种能力对于虚拟机的隔离和沙箱功能来说至关重要。

叫好与叫座虽然不是对立面,但想在同一个作品中达到双重效果很难。 5315

PY32F003 入门

PY32F003 入门

firseve的专栏 1万+

喷雾破碎模型解析:从理论到CFD应用实践

本文深入解析喷雾破碎模型的理论基础与CFD应用实践,重点介绍KHRT、TAB和ETAB等主流模型的核心原理与工程调参技巧。通过OpenFOAM实例演示和参数优化建议,帮助工程师精准预测液滴破碎行为,提升燃烧效率与排放控制性能,适用于汽车发动机、燃气轮机等工业场景。

weixin_29281915的博客 499

PY32F003F18点灯

PY32F003F18的GPIO输出功能。 Debug引脚默认被置于复用功能上拉或下拉模式: PA14默认为SWCLK: 置于下拉模式 PA13默认为SWDIO: 置于上拉模式 PF4默认为Boot:Boot引脚默认置于输入下拉模式

weixin_42550185的博客 1739

基于Ardupilot/PX4固件,APM/PIXhawk硬件的VTOL垂直起降固定翼软硬件参数调试(第二篇)软硬件参数调试

基于Ardupilot/PX4固件,APM/PIXhawk硬件的VTOL垂直起降固定翼软硬件参数调试(第二篇) 本文内容大部分来自Kris,我们的K大,在VTOL领域的大牛,在此,非常感谢K大。能引用K大的成果也是自己的荣幸,不便之处还请K大多多包涵,在此引用只是为方便自己日常学习,部分参数表里根据自身情况,增加了修改环节和相应参数。 垂直起降固定翼 中文教程-参数设置 垂直起降固定翼是由 多轴+...

u011322358的博客 2万+

从URDF到Gazebo:一个完整的ROS2机械臂仿真项目实战与避坑指南

本文提供了一个完整的ROS2机械臂仿真项目实战指南,详细讲解了从URDF建模、ROS2 Control配置、MoveIt2集成到Gazebo仿真的全流程。文章重点分享了URDF惯性参数设置、Gazebo插件选择、MoveIt2配置修正等关键步骤的避坑经验,帮助开发者快速搭建可用的六轴机械臂仿真环境,实现从静态模型到物理仿真的跨越。

weixin_29279153的博客 275

python 小例子 源码 莫凡_100 个 Python 小例子(基于 Python3)下篇

实例051:按位与题目:学习使用按位与 &amp; 。程序分析:0&amp;0=0; 0&amp;1=0; 1&amp;0=0; 1&amp;1=1。a=0o77print(a)b=a&amp;3print(b)b=b&amp;7print(b)复制代码实例052:按位或题目:学习使用按位或 | 。程序分析:0|0=0; 0|1=1; 1|0=1; 1|1=1a=0o77print(a|3)pri...

weixin_28871731的博客 138

ROS中costmap_converter插件的配置与使用

在学习TEB算法的过程中,作者提供了一个插件用于转换代价地图,原始的代价地图是由栅格地图中单元格组成,用于表示障碍物,但单元格占用的计算资源较大,故采用插件将单元格转换成点,线,多边形表示。 插件激活 rospack plugins --attrib=plugin costmap_converter 配置cfg文件 在导航配置文件下,新建costmap_converter_params.yaml #######################################################

weixin_42621524的博客 5905

Python3入门经典100例

最近由于人工智能和编译原理实验,决定要学python3。不为别的,就是因为自己语言基础太差,现学现卖只能用python了。网上看了一圈python的例题,都只有python2的,于是自己决定把python2的例题,手写成python3。希望通过这100道例题,自己能对python3的基础代码能力有一定的掌握。例1:题目:有1、2、3、4个数字,能组成多少个互不相同且无重复数字的三位数?都是多少?s...

qq_33679760的博客 5万+

微型纵向加密在新能源场站中的实战部署与运维避坑指南

本文详细解析了微型纵向加密在新能源场站中的实战部署与运维技巧。通过国密算法SM4实现数据加密,确保新能源场站通信安全,同时提供非侵入式部署方案和运维避坑指南,帮助提升网络稳定性和运维效率。

weixin_30505225的博客 596

基于FPGA的数字图像处理-直方图操作【3.3】

对于固定的位宽和图像分辨率来说,这个计算过程是 可定量的,也就是这个归一化系数是已知的。1.直方图累计和 根据数学定义,直方图累加和的定义是小于指定像素的所有像素 的统计值之和。在实际应用中,处理帧缓存是费时费力费资源的一件事情,在许 多情况下,图像的变换比较慢,在这种情况下的一个近似是当建立当 前帧的直方图统计结果时使用从前一帧得到的映射。由测试结果可见,这两幅过曝光和曝光不足的图像,经过均衡化 之后的效果图差别不大,对比度都非常高,设计代码达到了预期的均 衡目的。累加和的计算情况如图6-28所示。

qq_43416206的博客 1126

python爬虫100例教程 python爬虫实例100例子

python爬虫100例教程 python爬虫实例100例子 涉及主要知识点: web是如何交互的 requests库的get、post函数的应用 response对象的相关函数,属性 python文件的打开,保存 代码中给出了注释,并且可以直接运行哦 如何安装requests库(安装好python的朋友可以直接参考,没有的,建议先装一哈python环境) windows用户,Linux用户几乎一样: 打开cmd输入以下命令即可,如果python的环境在C盘的目录,会提示权限不够,只需以管

dhyuan_88的博客 3万+

数据库系统工程师软考备战:第三篇 - SQL语言深入解析与应用

​​创建表​​​修改表​​​删除表​。

Programming Talk 122

Python3算法基础练习:编程100例( 36 ~ 40 )

上期文章: Python3算法基础练习:编程100例( 31 ~ 35 ) 目录36 求100以内的素数37 数字排序38 求对角线元素之和39 数组插入数字保持有序 36 求100以内的素数 题目:求100以内的素数 指素数在大于1的自然数中,除了1和它本身以外不再有其他因数的自然数 代码: # 求100之内的素数。 from sys import stdout for i in range(1,100 + 1): if i &gt; 1: for n in range(

比特的一天 3510

WINCC7.3破解文件

WINCC7.3硬件够破解文件,有需要的下载!WINCC7.3硬件够破解文件,有需要的下载!

霍尼韦尔SoftMaster使用说明

霍尼韦尔SoftMaster使用说明

100 个 Python 小例子

作者:RichardFu123https://github.com/RichardFu123/Python100Cases原题地址:http://www.runoob.com/pytho...

Python小二 1910

Devexpress16.2.6破解工具

Devexpress16.2.6破解工具Devexpress16.2.6破解工具Devexpress16.2.6破解工具Devexpress16.2.6破解工具

python100例详解,python基础例子

大家好,小编为大家解答python例子大全的问题。很多人还不知道python基础例子,现在让我们一起来看看吧!32.按相反的顺序输出列表的值(简单,列表切片)33.按顿号分隔列表(较简单)34.练习函数调用35.文本颜色设置(暂时用不上,注意定义了一个类OK)36.输出指定范围内的素数(质数)(有意思)37.对10个数进行排序(多种方法)38.求3*3矩阵主对角线元素之和39.有一个已经排好序的数组。现输入一个数,要求按原来的规律将它插入数组中40.将一个数组逆序输出41.模仿静态变量的用法。

chatgpt002的博客 2592

C# WinForm 基于DirectShow.dll编写的程序,可边预览边保存视频,音频和图片

基于微软的DirectShow.dll的二次开发1.自动识别连接的摄像头跟麦克风且可以对其进行选择(默认选中第一个)2.可录制wmv和avi两种格式的视频并且都带有音频,avi可以录制的分辨率和帧数进行选择,wmv默认进行了淸晰度优化如不喜欢可去除代码中有相关提示3.可在预览点开之后进行拍照,也可边录制视频边拍照4.添加了视频和音频的压缩功能(酌情使用)这次二次开发发现C#对DirectShow的相关信息太少,这次做完也不敢藏私共享出来,还望大家指正

上一篇: 100 个 Python 小例子(基于 Python3)上篇
下一篇: 如何用python实现——进程间通信IPC的主要方式?
python小丸子
博客等级 码龄6年 30粉丝 24原创
评论 1
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值