Python小笔记

获取秒级时间戳与毫秒级时间戳

>>> import time
>>> t = time.time()
>>> print (t)                       #原始时间数据
1591857067.7889667
>>> print (int(t))                  #秒级时间戳
1591857067
>>> print(int(round(t * 1000)))		#毫秒级时间戳
1591857067789

>>> import datetime
>>> print(datetime.datetime.now().strftime('%Y-%m-%d %H:%M:%S'))	#日期格式化
2020-06-11 15:24:24

用Python获取指定数量的质数

什么是质数:除1以外的只能被1和它本身整除的自然整数就是质数;否则称为合数(1即不是质数也不是合数)

# -*- coding: utf-8 -*-
import sys

print_count = int(input("要打印多少个质数?:"))

count = 0
primes_list = []

# sys.maxsize 是Python3中最大int值;Python2中是sys.maxint
for num in range(2, sys.maxsize):

    # 如果质数数量等于最开始定义的数量,则打印出列表内容并退出
    if count == print_count:
        print(' '.join( str(i) for i in primes_list))
        break

    # 否则,每10个打印一次,打印完清空列表
    if len(primes_list) == 10:
        print(' '.join( str(i) for i in primes_list))
        primes_list.clear()
    
    if num == 2:
        primes_list.append(num)
        count += 1
    if int(num) % 2 == 0:
        pass
    else:
        # (num+1) / 2 减少运算次数,因为当n大于num的一半时,num就不再可能被n整除了(例如7/4)。
        for n in range(2, int((num+1) / 2)):
            if num % n == 0:
                break
        else:
            primes_list.append(num)
            count += 1

最后更新于