1、冒泡排序

lis = [56,12,1,8,354,10,100,34,56,7,23,456,234,-58]

def sortport():
for i in range(len(lis)-1):
for j in range(len(lis)-1-i):
if lis[j]>lis[j+1]:
lis[j],lis[j+1] = lis[j+1],lis[j]
return lis
if __name__ == '__main__':
sortport()
print(lis)

2、计算x的n次方的方法  

def power(x,n):
s = 1
while n > 0:
n=n-1
s=s*x
return s print(power(2,4))

3、计算a*a + b*b + c*c + …

def calc(*numbers):
sum=0
for n in numbers:
sum=sum+n*n
return sum
print(calc(2,4,5))

4、计算阶乘 n!

#方法一
def fac():
num = int(input("请输入一个数字:"))
factorial = 1
#查看数字是负数,0或者正数
if num<0:
print("抱歉,负数没有阶乘")
elif num == 0:
print("0的阶乘为1")
else:
for i in range(1,num+1):
factorial = factorial*i
print("%d的阶乘为%d"%(num,factorial))
if __name__ == '__main__':
fac()

    

#方法二
def fac():
num = int(input("请输入一个数字:"))
#查看数字是负数,0或者正数
if num<0:
print("抱歉,负数没有阶乘")
elif num == 0:
print("0的阶乘为1")
else:
print("%d的阶乘为%d"%(num,factorial(num)))
def factorial(n):
result = n
for i in range(1,n):
result=result*i
return result if __name__ == '__main__':
fac()
#方法三
def fac():
num = int(input("请输入一个数字:"))
#查看数字是负数,0或者正数
if num<0:
print("抱歉,负数没有阶乘")
elif num == 0:
print("0的阶乘为1")
else:
print("%d的阶乘为%d"%(num,fact(num))) def fact(n):
if n == 1:
return 1
return n * fact(n - 1) if __name__ == '__main__':
fac()

5、列出当前目录下的所有文件和目录名

import os

for d in os.listdir('.'):
print(d)

6、把一个list中所有的字符串变成小写:

L = ['Hello','World','IBM','Apple']
print([s.lower()for s in L])#整个list所有字符串都变成小写,返回一个list
for s in L:
s=s.lower()
print(s) #将list中每个字符串都变成小写,返回每个字符串

7、输出某个路径下的所有文件和文件夹的路径

import os
def print_dir():
filepath = input("请输入一个路径")
if filepath == "":
print("请输入正确的路径")
else:
for i in os.listdir(filepath): #获取目录中的文件及子目录列表
print(os.path.join(filepath,i)) #把路径组合起来
print(print_dir())

8、输出某个路径及其子目录下的所有文件路径

import os
def show_dir(filepath):
for i in os.listdir(filepath):
path = (os.path.join(filepath,i))
print(path)
if os.path.isdir(path): #isdir()判断是否是目录
show_dir(path) #如果是目录,使用递归方法
filepath = "E:\BaiduYunDownload"
show_dir(filepath)

9、输出某个路径及其子目录下所有以.html为后缀的文件

import os
def print_dir(filepath):
for i in os.listdir(filepath):
path = os.path.join(filepath,i)
if os.path.isdir(path): #isdir()判断是否是目录
print_dir(path) #如果是目录,使用递归方法
if path.endswith(".html"):
print(path)
filepath = "E:\BaiduYunDownload"
print_dir(filepath)

10、把原字典的键值对颠倒并生产新的字典

dict1 = {"A":"a","B":"b","C":"c"}
dict2 = {y:x for x,y in dict1.items()}
print(dict2)
#输出结果为{'a': 'A', 'b': 'B', 'c': 'C'}

11、打印九九乘法表 

for i in range(1,10):
for j in range(1,i+1):
print('%d x %d = %d \t'%(j,i,i*j),end='') #通过指定end参数的值,可以取消在末尾输出回车符,实现不换行。
print()

12、替换列表中所有的3为3a

num = ["harden","lampard",3,34,45,56,76,87,78,45,3,3,3,87686,98,76]
print(num.count(3))
print(num.index(3))
for i in range(num.count(3)): #获取3出现的次数
ele_index = num.index(3) #获取首次3出现的坐标
num[ele_index]="3a" #修改3为3a
print(num)

13、打印每个名字

L = ["James","Meng","Xin"]
for i in range(len(L)):
print("Hello.%s"%L[i])

14、合并去重

list1 = [2,3,8,4,9,5,6]
list2 = [5,6,10,17,11,2]
list3 = list1 + list2
print(list3) #不去重只进行两个列表的组合
print(set(list3)) #去重,类型为set需要转换成list
print(list(set(list3)))

15、随机生成验证码的两种方式(数字字母)

import random
list1=[]
for i in range(65,91):
list1.append(chr(i)) #通过for循环遍历asii追加到空列表中
for j in range (97,123):
list1.append(chr(j))
for k in range(48,58):
list1.append(chr(k))
ma = random.sample(list1,6)
print(ma) #获取到的为列表
ma = ''.join(ma) #将列表转化为字符串
print(ma)

16、计算平方根

num = float(input('请输入一个数字:'))
num_sqrt = num ** 0.5
print('%0.2f 的平方根为%0.2f'%(num,num_sqrt))

17、判断字符串是否只由数字组成  

#方法一
def is_number(s):
try:
float(s)
return True
except ValueError:
pass
try:
import unicodedata
unicodedata.numeric(s)
return True
except(TypeError,ValueError):
pass
return False
t="a12d3"
print(is_number(t))
#方法二
t = "q123"
print(t.isdigit()) #检测字符串是否只由数字组成

 

#方法三
t = "123"
print(t.isnumeric()) #检测字符串是否只由数字组成,这种方法是只针对unicode对象

18、判断奇偶数

#方法一
num = int(input('请输入一个数字:'))
if (num % 2) == 0:
print("{0}是偶数".format(num))
else:
print("{0}是奇数".format(num))

  

#方法二
while True:
try:
num = int(input('请输入一个整数:')) #判断输入是否为整数,不是纯数字需要重新输入
except ValueError:
print("输入的不是整数!")
continue
if (num % 2) == 0:
print("{0}是偶数".format(num))
else:
print("{0}是奇数".format(num))
break

19、判断闰年

#方法一
year = int(input("请输入一个年份:"))
if (year % 4) == 0:
if (year % 100) == 0:
if(year % 400) ==0:
print("{0}是闰年".format(year)) #整百年能被400整除的是闰年
else:
print("{0}不是闰年".format(year))
else:
print("{0}是闰年".format(year)) #非整百年能被4整除的为闰年
else:
print("{0}不是闰年".format(year))

  

#方法二
year = int(input("请输入一个年份:"))
if (year % 4) == 0 and (year % 100)!=0 or (year % 400) == 0:
print("{0}是闰年".format(year))
else:
print("{0}不是闰年".format(year))

  

#方法三
import calendar
year = int(input("请输入年份:"))
check_year=calendar.isleap(year)
if check_year == True:
print("%d是闰年"%year)
else:
print("%d是平年"%year)

20、获取最大值

N = int(input('输入需要对比大小的数字的个数:'))
print("请输入需要对比的数字:")
num = []
for i in range(1,N+1):
temp = int(input('请输入第%d个数字:'%i))
num.append(temp)
print('您输入的数字为:',num)
print('最大值为:',max(num))

  

N = int(input('输入需要对比大小的数字的个数:\n'))
num = [int(input('请输入第%d个数字:\n'%i))for i in range(1,N+1)]
print('您输入的数字为:',num)
print('最大值为:',max(num))

21、斐波那契数列

斐波那契数列指的是这样一个数列 0, 1, 1, 2, 3, 5, 8, 13;特别指出:第0项是0,第1项是第一个1。从第三项开始,每一项都等于前两项之和。

# -*- coding: UTF-8 -*-
# Python 斐波那契数列实现
# 获取用户输入数据
nterms = int(input("你需要几项?")) # 第一和第二项
n1 = 0
n2 = 1
count = 2 # 判断输入的值是否合法
if nterms <= 0:
print("请输入一个正整数。")
elif nterms == 1:
print("斐波那契数列:")
print(n1)
else:
print("斐波那契数列:")
print(n1, ",", n2, end=" , ")
while count < nterms:
nth = n1 + n2
print(nth, end=" , ")
# 更新值
n1 = n2
n2 = nth
count = count + 1

22、十进制转二进制、八进制、十六进制

#获取输入十进制数
dec = int(input("输入数字:"))
print("十进制数位:",dec)
print("转换为二进制为:",bin(dec))
print("转换为八进制为:",oct(dec))
print("转换为十六进制为:",hex(dec))

23、最大公约数

def hcf(x,y):
###该函数返回两个数的最大公约数 ###获取最小值
if x > y:
smaller = y
else:
smaller = x
for i in range(1,smaller+1):
if ((x % i == 0))and (y % i == 0):
hcf = i
# print(hcf)
return hcf
# 用户输入两个数字
num1 = int(input("请输入第一个数字:"))
num2 = int(input("请输入第二个数字:"))
print(num1,"和",num2,"的最大公约数为",hcf(num1,num2))

23、最小公倍数

### 定义函数
def lcm(x,y):
##获取最大的数
if x > y:
greater = x
else:
greater = y
while(True):
if ((greater % x == 0)and(greater % y == 0)):
lcm = greater
break
greater= greater +1
return lcm
##获取用户输入
num1 = int(input("请输入第一个数字:"))
num2 = int(input("请输入第二个数字:"))
print(num1,"和",num2,"的最小公倍数为",lcm(num1,num2))

24、生成日历

###引入日历模块
import calendar
##输入指定年月
yy = int(input("请输入年份:"))
mm = int(input("请输入月份:"))
###显示日历
print(calendar.month(yy,mm))

25、文件IO

###写文件
with open("test.txt","wt") as out_file:
out_file.write("该文本会写入到文件中\n看到我了吧!") ###读文件
with open("test.txt","rt")as in_file:
text = in_file.read()
print(text)

26、字符串判断   

print("测试实例一")
str = "runoob.com"
print(str.isalnum()) #判断所有字符都是数字或者字母
print(str.isalpha()) #判断所有字符都是字母
print(str.isdigit()) #判断所有字符都是数字
print(str.islower()) #判断所以字符都是小写
print(str.isupper()) #判断所有字符都是大写
print(str.istitle()) #判断所有单词都是首字母大写,像标题
print(str.isspace()) #判断所有字符都是空白字符、\t、\n、\r

27、字符串大小写转换 

str = "https://www.cnblogs.com/duxf100/"
print(str.upper()) ##把所有字符中的小写字母转换成大写字母
print(str.lower()) ##把所有字符中的大写字母转换成小写字母
print(str.capitalize()) ##把第一个字母转化为大写字母,其余小写
print(str.title()) ##把每个单词的第一个字母转化为大写,其余小写

28、计算每个月天数

import calendar
monthRange = calendar.monthrange(2019,5)
print(monthRange)
"""
执行以上代码输出结果为:
(3, 30)
输出的是一个元组,第一个元素是所查月份的第一天对应的是星期几(0-6),第二个元素是这个月的天数。
以上实例输出的意思为 2016 年 9 月份的第一天是星期四,该月总共有 30 天。
"""

29、获取昨天的日期  

##引入datetime 模块
import datetime
def getYesterday():
today=datetime.date.today()
oneday=datetime.timedelta(days=1)
yesterday=today-oneday
return yesterday
print(getYesterday())

  

 

 

  

  

  

  

  

  

  

  

 

 

 

  

  

  

  

  

  

  

  

  

  

Python常见的脚本汇总的更多相关文章

  1. Python常见的错误汇总

    +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ 错误: [错误分析]第二个参数必须为类,否则会报TypeError,所以正确的应 ...

  2. Python三十个常见的脚本汇总

    1.冒泡排序     2.计算x的n次方的方法     这里有我自己整理了一套最新的python系统学习教程,包括从基础的python脚本到web开发.爬虫.数据分析.数据可视化.机器学习等.送给正在 ...

  3. python面试笔试题汇总

    Python面试攻略(嗨谈篇) 110道python面试笔试题汇总,你能答对几道? Python 面试问答 Top 25 2018 年最常见的 Python 面试题 & 答案

  4. python注释、脚本参数、字节码

    python注释.脚本参数.字节码 --道心 python安装 1.下载安装包 https://www.python.org/downloads/ 2.安装 默认安装路径:C:\python27 3. ...

  5. [Python] 机器学习库资料汇总

    声明:以下内容转载自平行宇宙. Python在科学计算领域,有两个重要的扩展模块:Numpy和Scipy.其中Numpy是一个用python实现的科学计算包.包括: 一个强大的N维数组对象Array: ...

  6. Python数据库备份脚本

    Python数据库备份脚本 #!/usr/bin/env python # author: liudong # -*- coding: utf-8 -*- # filename: db_bak.py ...

  7. 「python」: arp脚本的两种方法

    「python」: arp脚本的两种方法 第一种是使用arping工具: #!/usr/bin/env python import subprocess import sys import re de ...

  8. IE6的那些css常见bug(汇总)

    IE6的那些css常见bug(汇总) 我的微博终于在前几天建立了 虽说很早之前就知道博客园这个地方 但怕自己不能坚持去写一些东西一直没有建.这几天 我做了这个决定 把我的博客建起来 每周发一些看到的, ...

  9. 老李分享:Python开发性能测试脚本

    老李分享:Python开发性能测试脚本   测试开发工程师的工作主要是根据测试目标来完成,帮助测试人员完成测试目标,测试的业务需求是测试人员提出,但是由于环境的制约,手中没有性能测试工具的时候,性能测 ...

随机推荐

  1. Kali-linux测试网络范围

    测试网络范围内的IP地址或域名也是渗透测试的一个重要部分.通过测试网络范围内的IP地址或域名,确定是否有人入侵自己的网络中并损害系统.不少单位选择仅对局部IP基础架构进行渗透测试,但从现在的安全形势来 ...

  2. Kali-linux准备内核头文件

    内核头文件是Linux内核的源代码.有时候,用户需要编译内核头文件代码,为以后使用内核头文件做准备,本节将介绍编译内核头文件的详细步骤. 准备内核头文件的具体操作步骤如下所示. (1)更新软件包列表. ...

  3. ASP.NET Web API编程——文件下载

    断点续传基本原理 HTTP协议中与断点续传相关的HTTP头为:Range和Content-Range标头,断点续传实现流程: 1)客户端请求下载一个文件,文件的总长度为n:已经下载了一部分文件,长度为 ...

  4. linux-资料汇集

    1.http://www.debian.org/doc/ 2.鸟哥的私房菜 3.The Linux Command Line by William E. Shotts, Jr. 4.https://d ...

  5. C#中Form的Paint事件响应方法与重载虚方法OnPaint()的区别

    Form_Paint()方法是Paint事件的响应方法,OnPaint是可重载的虚方法,OnPaint方法是调用Paint事件的,用哪一个,效果是一样,就看那一个方便了内部是这样实现的: protec ...

  6. mongodb副本集优先级设置

    在设置mongodb副本集时,Primary节点.second节点,仲裁节点,有可能资源配置(CPU或者内存)不均衡,所以要求某些节点不能成为Primary我们知道mongodb的设置:  除了仲裁节 ...

  7. 十二、IntelliJ IDEA 中的版本控制介绍(中)

    由于 IntelliJ IDEA 支持的版本控制工具非常的多,但咱们真正能够用到的也就两三个而已,因此在本篇博文中,咱们主要介绍 SVN.Git 和 GitHub 的配置方法. SVN 如果想要在 I ...

  8. 【题解】洛谷P1065 [NOIP2006TG] 作业调度方案(模拟+阅读理解)

    次元传送门:洛谷P1065 思路 简单讲一下用到的数组含义 work 第i个工件已经做了几道工序 num 第i个工序的安排顺序 finnish 第i个工件每道工序的结束时间 need 第i个工件第j道 ...

  9. LeetCode28.实现strStr() JavaScript

    实现 strStr() 函数. 给定一个 haystack 字符串和一个 needle 字符串,在 haystack 字符串中找出 needle 字符串出现的第一个位置 (从0开始).如果不存在,则返 ...

  10. Intermediate_JVM 20180306 : 运行时数据区域

    Java比起C++一个很大的进步就在于Java不用再手动控制指针的delete与free,统一交由JVM管理,但也正因为如此,一旦出现内存溢出异常,不了解JVM,那么排查问题将会变成一项艰难的工作. ...