#输出9*9乘法表
for i in range(1,10):
for j in range(1,i+1):
print('%d * %d = %d ' % (i, j, i*j), end='')
print()
#暂停一秒输出
import time
myD = {1:'a', 2:'b'}
for key, value in dict.items(myD):
print(key, value)
time.sleep(1)
#暂停一秒输出,并格式化当前时间
import time
print(time.strftime('%Y-%m-%d %H:%M:%S',time.localtime(time.time())))
# 暂停一秒
time.sleep(1)
print(time.strftime('%Y-%m-%d %H:%M:%S',time.localtime(time.time())))
#判断101-200之间有多少个素数,并输出所有素数。
l = []
for i in range(101,201):
for j in range(2, int(i/2)):
if i%j==0 :
break
else: #当迭代的对象迭代完并为空时,才会执行else操作,break掉时并不会执行else
l.append(i)
print(l)
print(len(l))
#打印出所有的"水仙花数",所谓"水仙花数"是指一个三位数,其各位数字立方和等于该数本身。
for i in range(100,1000):
a = i//100
b = i//10%10 #这个地方如果使用/,并不会返回整数部分,而是原始值
c = i%10
if i==pow(a,3)+pow(b,3)+pow(c,3):
print(i)
#将一个正整数分解质因数。例如:输入90,打印出90=2*3*3*5
x = int(input("是否进入循环?是:1, 否:0\n"));
while(x):
n = int(input("请输入一个正整数:"));
print ("%d = " % n , end = '');
while n not in [1]:
for index in range(2, n+1):
if n % index == 0:
n = int(n/index);
if n == 1:
print("%d " % index , end = '');
else:
print("%d * " % index , end = '')
break;
print()
x = int(input("是否进入循环?是:1, 否:0\n"));
print("end!")
'''利用条件运算符的嵌套来完成此题:学习成绩>=90分的同学用A表示,
60-89分之间的用B表示,60分以下的用C表示。
'''
flag = int(input('if into circle yes:1 no:0\n'))
while(flag):
score = int(input('please input a score:\n'))
if score>=90:
print('A')
elif score>=60:
print('B')
else:
print('C')
flag = int(input('if into circle yes:1 no:0\n'))
print('end!')
#输出指定格式的日期。
import time
import datetime
print('use datatime')
print(time.time())
print(time.localtime())
print(time.asctime())
print(time.strftime('%Y-%m-%d %H:%M:%S',time.localtime()))
print('use datatime')
print(datetime.date.today())
print(datetime.date.today().strftime('%d/%m/%Y'))
print(datetime.date(1941, 1, 5))
#输入一行字符,分别统计出其中英文字母、空格、数字和其它字符的个数。
a = input('请输入一串字符:')
英文 = 0
空格= 0
数字= 0
其他= 0
for i in a:
if i.isalpha():
英文 += 1
elif i.isspace():
空格 += 1
elif i.isnumeric():
数字 += 1
else:
其他 += 1
print('英文 = %s,空格 = %s,数字 = %s,其他 = %s' % (英文,空格,数字,其他))
#一个数如果恰好等于它的因子之和,这个数就称为"完数"。例如6=1+2+3.编程找出1000以内的所有完数。
for i in range(2,1001):
sum = 0
for j in range(1,i):
if i%j == 0:
sum += j
if sum==i:
print(i)
#一球从100米高度*落下,每次落地后反
#跳回原高度的一半;再落下,求它在第10次落地时,
#共经过多少米?第10次反弹多高?
hei = 100
time = 10
height = []
for i in range(2,11):
hei /= 2
height.append(hei)
print('第10次反弹高度:%s' % min(height))
print('第十次落地总共经历了%s米' % (sum(height)*2+100))
#打印出菱形
for i in range(1, 5):
print(' ' * (4 - i), end='')#''*(4-i):重复输出多少次
for j in range(1, 2 * i):
print('*', end='')
print()
for i in range(3, 0, -1):
print(' ' * (4 - i), end='')
for j in range(1, 2 * i):
print('*', end='')
print()
#有一分数序列:2/1,3/2,5/3,8/5,13/8,21/13...求出这个数列的前20项之和
sum = 0
a, b = 1, 2
for i in range(1, 21):
sum += b / a
a, b = b, a + b
print(sum)
#一个5位数,判断它是不是回文数。即12321是回文数,个位与万位相同,十位与千位相同。
'''
将列表a倒序处理,如果a=[1,2,3],
则a[::-1]=[3,2,1]。前两个冒号表示处理整个列表,
也可以写上参数表示处理列表的一部分,例如a[2:0:-1]=[3,2]
,第一个参数表示起始点包括起始点,第二个参数表示结束点但不包括结束点
。最后一个参数如果为负的话,需要保证第一个参数大于第二个参数,表示依次递减逆序
,否则会输出空列表。'''
a = input("输入一串数字: ")
b = a[::-1]
if a == b:
print("%s 是回文"% a)
else:
print("%s 不是回文"% a)
#按逗号分隔列表
l = [1,2,3,4,5,6,7];
k = 1;
for i in l:
print(i,end= ('' if (k == len(l)) else ','));
k += 1;
#按逗号分隔列表。
L = [1,2,3,4,5]
s1 = ','.join(str(n) for n in L)
print(s1)
'''
通俗的理解__name__ == '__main__':
假如你叫小明.py,在朋友眼中,你是小明(__name__ == '小明');
在你自己眼中,你是你自己(__name__ == '__main__')。
if __name__ == '__main__'的意思是:
当.py文件被直接运行时,if __name__ == '__main__'之下的代码块将被运行;
当.py文件以模块形式被导入时,if __name__ == '__main__'之下的代码块不被运行。
'''
def hello_world():
print('hello world')
def three_hellos():
for i in range(3):
hello_world()
if __name__ == '__main__':
three_hellos()
#按相反的顺序输出列表的值。
a = ['a', 'b', 'c']
for i in a[::-1]:
print(i,end='')
#求100之内的素数。
#coding=utf8
l = []
for i in range(2,101):
for j in range(2,i):
if i%j == 0:
break
else: l.append(i)
print(l)
#模仿静态变量的用法。
class Static:
StaticVar = 5
def varfunc(self):
self.StaticVar += 1
print(self.StaticVar)
print(Static.StaticVar)
a = Static()
for i in range(3):
a.varfunc()
#两个变量值互换。
a,b = 'a','b'
print('a = %s; b = %s' % (a,b))
a,b = b,a
print('a = %s; b = %s' % (a,b))
#使用lambda来创建匿名函数。
h=lambda x,y:x//y
x,y=eval(input('请输入两个数字,并以逗号分隔:'))
print(h(x,y))
#输出1-99间的随机数
import random
print(random.choice([x for x in range(1,101)]))
#输出0-1之间的随机数
print(random.random())
#输出10-20之间的随机数
print(random.uniform(10,21))
#0&0=0; 0&1=0; 1&0=0; 1&1=1。
#0|0=0; 0|1=1; 1|0=1; 1|1=1
#0^0=0; 0^1=1; 1^0=1; 1^1=0
#~0=1; ~1=0
#用turtle画图
import turtle
def drawline(n):
t=turtle.Pen()
t.color(0.3,0.8,0.6) #设置颜色,在0--1之间
t.begin_fill() #开始填充颜色
for i in range(n): #任意边形
t.forward(50)
t.left(360/n)
t.end_fill() #结束填充颜色
turtle.done() #不加这个画完图后会自动关闭
#绘制6边型
drawline(6)
#有n个整数,使其前面各数顺序向后移m个位置,最后m个数变成最前面的m个数
from collections import deque
m = 3
a = [1,2,3,4,5,6,7] # 7 个数
f = deque(a) #双端队列
f.rotate(3)
print(list(f))
#有n个人围成一圈,顺序排号。从第一个人开始报数(从1到3报数),
#凡报到3的人退出圈子,问最后留下的是原来第几号的那位。
data = [i+1 for i in range(34)]
print(data)
i = 1
while len(data) > 1:
if i % 3 == 0:
data.pop(0)
print(data)
else:
data.insert(len(data),data.pop(0))
i += 1
print(data)
#创建一个链表。
l=[input("please input a number:\n") for i in range(5)]
print(l)
#找到年龄最大的人,并输出。
person = {"li":18,"wang":50,"zhang":20,"sun":22}
def find_max(dict):
max_age = 0
for key,value in dict.items():
if value>max_age:
max_age = value
name = key
print(name)
print(max_age)
find_max(person)
#连接字符串
d = ','
mylist = ['Brazil', 'Russia', 'India', 'China']
print(d.join(mylist))
#或者
if __name__ == '__main__':
str = ['qerqwe','dsdd','wrwr']
strjoin = ''
strjoin = strjoin.join(str)
print(strjoin)
#从键盘输入一些字符,逐个把它们写到磁盘文件上,直到输入一个 # 为止。
filename = input('input a filename:\n')
filename = 'e:/'+filename
fp = open(filename,'w+')
ch = ''
while '#' not in ch:
fp.write(ch)
ch = input('input a content:\n')
fp.close()
#从键盘输入一个字符串,将小写字母全部转换成大写字母,然后输出到一个磁盘文件"test"中保存。
structure is:
with expression [as variable]:
with-block
'''
import sys
str = input('请输入一个字符串:\n')
with open('e:/test1.txt','w+') as f:
f.write(str.upper())
f.close()
#列表转换为字典。
i = ['a','b','c']
l = [1,2,3]
#zip函数接受任意多个(包括0个和1个)序列作为参数,返回一个tuple列表。
b=dict(zip(i,l))
print(b)