python 从小白到大白

您所在的位置:网站首页 python生成手机号字典代码 python 从小白到大白

python 从小白到大白

2023-06-03 21:31| 来源: 网络整理| 查看: 265

目录

1.最简单最入门的打印

2.注释

2.1单行注释

2.2多行注释

3.开始做题

3.1

3.2求阶乘

3.2.1.利用循环

3.2.2导入math库

3.3

3.4求最大公约数最小公倍数

3.5斐波那契数列(Fibonacci sequence),

3.6

1.最简单最入门的打印

在面向结果的打印时,python的输出最方便。Python的输出格式非常简单,语法易于理解,输出结果易于阅读。Python使用缩进来表示代码块,不需要额外的语法标记,使得代码可以更加紧凑和易读。

print("hello python") 2.注释

在学习代码时,我们要学会做注释。

注释可以说明代码的用途和功能,提供代码编写过程中的思考过程和决策依据,方便后续的修改和调试。

2.1单行注释 # 这是代码的注释 2.2多行注释 """ 我是注释 """ ''' 我也是注释 ''' 3.开始做题

从题中去感受python的魅力

3.1

编写一个程序,查找所有此类数字,它们可以被7整除,但不能是5的倍数(在2000和3200之间(均包括在内))。获得的数字应以逗号分隔的顺序打印在一行上。

l=[] #创建一个列表 for i in range(2000, 3201): #python的循环格式 if (i%7==0) and (i%5!=0): #循环条件 l.append(str(i)) print( ','.join(l)) #以逗号分隔

 l.append(str(i))

这行代码是将一个整数i转换成字符串类型,然后将该字符串添加到列表l的末尾。更具体地说,l是一个列表,append是列表的一个方法,表示将括号内的元素添加到列表末尾。i是一个整数,通过str()函数将其转换为字符串类型,并将该字符串添加到列表l的末尾。这行代码的作用是将整数i添加到列表l中,以便后续对该列表的处理。

3.2求阶乘

编写一个程序,可以计算给定数字的阶乘,结果应以逗号分隔的顺序打印在一行上,假设向程序提供了以下输入:8然后,输出应为:40320

3.2.1.利用循环 def main(num): a=1 for i in range(1,num+1): a*=i return a print(main(10)) 3.2.2导入math库 import math def main(num): return math.factorial(num) print(main(5))

在这里要注意 import math 是导入math库的意思,import math是用来导入Python标准库中的math模块。math模块提供了许多数学函数和常量,例如三角函数、对数函数、常数π等。通过import math语句导入math模块后,可以在代码中调用该模块中的函数和常量,例如使用math.sin()调用正弦函数,使用math.pi调用常量π的值,以及其他更多的数学计算功能。

在写项目的时候,我们一个代码里面不能装太多行代码,不利于查找,由此我们使用import

import是Python语言中用于导入模块的关键字。模块是Python程序中的一个文件,其中包含可执行的代码、函数、类、变量等。通过使用import关键字,可以在当前程序中引入其他模块的代码,以便在当前程序中使用模块中定义的函数、类和变量等。

3.3

使用给定的整数n,编写程序以生成包含(i,ixi)的字典,该字典为1到n之间的整数(都包括在内)。然后程序应打印字典。假设向程序提供了以下输入:8\

输出为{1: 1, 2: 4, 3: 9, 4: 16, 5: 25, 6: 36, 7: 49, 8: 64}

n = int(input()) ans={i : i*i for i in range(1,n+1)} print(ans) # 演进 try: num = int(input("Enter a number: ")) except ValueError as err: print(err) dictio = dict() for item in range(num+1): if item == 0: continue else: dictio[item] = item * item print(dictio)

在这里又想说一下字典

3.3.1字典是什么

Python字典是另一种可变容器模型,可存储任意类型对象。如字符串、数字、元组等其他容器模型 因为字典是无序的所以不支持索引和切片。

3.3.2字典的格式

dict = {"nane": "张三", "age": 20, "sex": "男"} dict1={} dict2={} print(dict) print(dict1) print(dict2)

{'nane': '张三', 'age': 20, 'sex': '男'} {} {}

3.3.3字典的一些基本操作 

1.增: 格式: 字典名[new key]=new value

# 定义一个字典 dict = {"nane": "张三", "age": 20, "sex": "男"} # 增加元素 dict["score"] = 100 print(dict)

{'nane': '张三', 'age': 20, 'sex': '男', 'score': 100}

 2.删: 格式:del 字典名[key]

3.查: 格式: value=字典名[key]

4.改: 格式: 字典名[key]=new value

清空字典

#清空字典 dict.clear() print(dict) # 定义一个字典 dict = {"name": "张三", "age": 20, "sex": "男"} #常见操作 #len():测量字典中的键值对 print(len(dict)) #keys():返回所有的key print(dict.keys()) #values():返回包含value的列表 print(dict.values()) #items():返回包含(键值,实值)元组的列表 print(dict.items()) #in not in if 20 in dict.values(): print("我是年龄") if "李四" not in dict.values(): print("李四不存在")

3 dict_keys(['name', 'age', 'sex']) dict_values(['张三', 20, '男']) dict_items([('name', '张三'), ('age', 20), ('sex', '男')]) 我是年龄 李四不存在  

5.字典的遍历

my_dict={"name":"小红","age":20,"sex":"女"} #1.key for i in my_dict.keys(): print(i) #2.value for i in my_dict.values(): print(i) #3.所有项(元素) item for i in my_dict.items(): print(i) #4.依次打印key和value,通过索引 for key,value in my_dict.items(): print(key,value) #5.元素值和对应的下标索引 enumerate(列表名) for i in enumerate(my_dict): print(i)

 name  age sex 小红 20 女 ('name', '小红') ('age', 20) ('sex', '女') name 小红 age 20 sex 女 (0, 'name') (1, 'age') (2, 'sex')

3.4求最大公约数最小公倍数

原理都清楚吧,辗转相除

(1)比较两数,并使m>n

(2)将m作被除数,n做除数,相除后余数为r

(3)循环判断r,若r==0,则n为最大公约数,结束循环。若r !=0 ,执行m=n,n=r;将m作被除数,n做除数,相除后余数为r

num1=int(input("请输入第一个数字:")) num2=int(input("请输入第一个数字:")) m=max(num1,num2) n=min(num1,num2)#保证m是大于n的 r=m%n while r!=0: m=n n=r r=m%n print(num1,"和",num2,"的最大公约数为",n)

 其实在c语言中 代码思路是一样的 就是格式不同

3.5斐波那契数列(Fibonacci sequence),

又称黄金分割数列、因数学家莱昂纳多·斐波那契(Leonardoda Fibonacci)以兔子繁殖为例子而引入,故又称为“兔子数列”。斐波那契数列指的是这样一个数列 0, 1, 1, 2, 3, 5, 8, 13,特别指出:第0项是0,第1项是第一个1。从第三项开始,每一项都等于前两项之和。

def fib(n): a,b=1,1 for i in range(n): print(a,end = " ") temp = a a = b b = temp + b num=int(input("")) fib(num)

def函数 定义函数

def add1(num1, num2): result = num1 + num2 return result x1, x2 = 1, 2 y = add1(x1, x2) print(y) 3.6

编写一个程序,该程序接受以逗号分隔的4位二进制数字序列作为输入,然后检查它们是否可被5整除。被5整除的数字将以逗号分隔的顺序打印。

输入:0100,0011,1010,1001

输出:1010 

def check(x): #转换二进制整数&返回由5零中频整除 total, pw = 0, 1 reversed(x) for i in x: total+=pw * (ord(i) - 48) #ORD()函数返回ASCII值 pw*=2 return total % 5 data = input().split(",") #输入此处,并在','位置分割 lst = [] for i in data: if check(i) == 0: #如果零发现它是指由零整除并添加到列 lst.append(i) lst.append(i) print(",".join(lst))

 



【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3