Python100题

先安装一个库,下文会用

import timefrom tqdm import tqdm
for i in tqdm(range(10000)): time.sleep(.01)

在运行了~

所有的代码都是在VScode内完成

先建立一个jupyter的笔记本

然后转换为脚本形式

当在编辑器内跳出括号,用插件

自己搜搜


以下代码不建议在普通的编辑器内使用,推荐code

可以按键运行

也可以shift+Enter运行,而且打开一个新cell

会在左面的页面打开运行页面,以下内容都是小代码。

有注释~~~

'''

Author: your name

Date: 2021-02-16 08:02:12

LastEditTime: 2021-02-16 09:38:09

LastEditors: Please set LastEditors

Description: In User Settings Edit

FilePath: \Python学习程序\100题.py

'''

# To add a new cell, type '# %%'

# To add a new markdown cell, type '# %% [markdown]'

# %%

2**3

# %%

pow(2,3)

# %%

l = (121,3,467,98,90)

print(max(l ))

print(min(l))

# %%

# 将字符列表转为字符串

l=['python','Circle','is','ok']

j=' '.join(l)

print(j)

# %%

# 快速打印ascii字符

import string

from typing import Match

string.ascii_letters

# %%

#让字符串居中

k='这个是一段测试用的字符'

k.center(50)

k.center(50,'*')

# %%

# 在字符串中找到子串

ss = 'I Love You'

ss.find('I')

ss.find('You')

# %%

#让字符首字母大写,其余字母小写

ss = 'i love java'

ss.title()

# %%

# 第二种方法

import string

ss='i love python'

string.capwords(ss)

# %%

# 清空列表内容

l = [1,2,3]

l.clear()

print(l)

# %%

# 上一题的第二种方法

k = [1,2,3]

k[:]=[]

print(k)

#切片赋值

# %%

# 计算一个指定的元素在列表中出现的次数

l = ['i','am','is','ok','ok','ok']

l.count('ok')

# %%

# 如何在列表末尾加入其它的元素

l = [1,2,3]

j = [4,5,6]

l.extend(j)

print(l)

# %%

# extend和列表相加的区别

l=[1,2,3]

j=[1,2,3]

print(l+j)

# %%

num = [1,2,3,4,5]

num.insert(2,'three')

print(num)

# %%

num=[1,2,3,4,5]

num[2:2]=['three']

print(num)

# %%

num=[1,2,3,4,5]

num.pop()

print(num)

# %%

num=[1,2,3,4,5]

num.pop(1)

print(num)

# %%

num=[1,2,3,4,5]

num.remove(5)

print(num)

# %%

num=[1,2,3,4,5]

num.reverse()

print(num)

# %%

num=[1,2,3,4,5]

num[::-1]

print(num)

# %%

#只包含一个元素的元组

t=(1)

type(t)

# %%

t=(1,)

type(t)

# %%

'i love python'.replace('o', 'ee')

# %%

# 将字符按照空格分隔

' i love python '.strip()

# %%

# 怎么给字典不存在的key指定默认值

d = {'age':42,'name':'g'}

d.get('aa','N/A')

# %%

sum(range(1,101))#1-100的和

# %%

dir(request)

# %%

range.__doc__

# %%

import webbrowser

webbrowser.open('www.baidu.com')

# %%

# Python的占位符怎么表示

if name == 'zzg':

print('饿')

elif name == 'dadama':

pass

# pass的意思就是没有想好代码块的逻辑

# %%

def square(x):

"""返回平方值"""

return x*x

square.__doc__

# %%

# 如何定义私有方法

class Person:

def __name(self):

print('私有方法')

#注意用from module import *导入时不会导入私有方法

# %%

# 【判断一个类的从属

class A:

pass

class B(A):

pass

issubclass(B,A)

# %%

import random

random.choice([1,'sd',3,'都'])

# %%

import random

random.__all__

# %%

type({})

# %%

a={6,7,8}

b = {7,8,9}

a.union(b)

# %%

a={6,7,8}

b = {7,8,9}

a|b

# %%

a={6,7,8}

b = {7,8,9}

a&b

# %%

a={6,7,8}

b = {7,8,9}

a.intersection(b)

# %%

a={6,7,8}

b = {7,8,9}

a^b

# %%

ax={6,7,8}

y = {7,8,9}

ax.symmetric_difference(y)

# %%

a={6,7,8}

b = {7,8,9}

a-b

# %%

a={6,7,8}

b = {7,8,9}

a.difference(b)

# %%

import random

t = (2020,7,8,9,4,3,6,7,8,5,3,21,234)

random.sample(t,2)

# 从一个序列随机返回n个不同值的元素

# %%

import random

random.uniform(10,20)

# %%

import random

random.randrange(0, 100, 10)

# %%

with open('bruce.txt', 'r') as f:

f.read()

# %%

import sys

sys.path

# %%

import os

os.system('cd C:\Users\yunswj\Desktop\Python学习程序 && mkdir aaa.txt')

# %%

import time

time.asctime()

# %%

import time

time.localtime(18888888888)

time.struct_time(tm_year=2029,tm_mon=11,tm_day=9,tm_hour=11,tm_min=21,tm_sec=28,tm_wday=313,tm_isdst=0)

# %%

#随机打乱列表

import random

t=list(range(20))

print(t)

random.shuffle(t)

print(t)

# %%

# 怎么用for循环实现吧字符串编程Unicode码位的列表

st = '!^&^&*(@^#(*&@'

codes = []

for s in st:

codes.append(ord(s))

print(codes)

# %%

# 用列表推导式实现吧字符串编程Unicode码位的列表

st = '!^&^&*(@^#(*&@'

codes = [ord(s) for s in st]

print(codes)

# %%

# 打印两个列表的笛卡尔积

colors = ['blacks', 'white']

sizes = ['S','M','L']

for tshirt in ('%s %s'%(c, s) for c in colors for s in sizes):

print(tshirt)

# %%

import itertools

list(itertools.product

(

['blacks','white']

))

# 使用itertools的product生成器函数

# %%

#我们使用for循环提取元组里面的元素,对于我们不想接受的元素,可以用占位符_来接受

player_infos = [('kobe','24'),('James','16'),('Iverson','3')]

for player_names, _ in player_infos:

print(player_names)

# %%

# 用什么方式接受不确定的值或者参数

#用*args的方式,*args可以在任意的位置

a,b,*c = range(8)

print(a,b,c)

# %%

# 用切片将对象倒叙

s = 'zxcvbnm'

s[::-1]

# %%

l = [1,2,3]

id(l)

# %%

# 注意对不可变的序列进行重复的拼接操作的时候,效率胡很低,因为每次都有一个新对象,儿解释器需要把原来对象中的元素先复制到新的对象里,然后再追加新元素

# %%

# 元组不可变,错误抛出

t=(1,2,[30,40])

t[2] += [50,60]

# %%

l = [1,9,5,8]

j = l.sort()

print(j = l.sort())

print(k = sorted(l))

# %%

# 将以为数组变为二维的数组

import numpy

a = numpy.arange(12)

print(a)

a.shape = 3, 4

print(a)

# %%

# 快速的插入元素到列表的头部

l=[1,2,3,4,5]

l[0:0] = 'python'

print(l)

# %%

# 可以用插入法,第一个参数是位置的坐标

l=[1,2,3,4,5]

l.insert(0,'first')

print(l)

# %%

#那其实在第一个元素的前面添加元素是个耗时的事情,可以使用双向队列

from collections import deque

dp = deque(range(10),maxlen=15)

print(dp)

dp.appendleft(-1)

print(dp)

#可以指定这个队列的大小,如果满了,还可以反向的删除过期的元素

# %%

# 如何统计字符出现的个数

import collections

ct = collections.Counter('fdghkslgfdskajfgdhjksgfhjkdsgfhdskgfhdks')

print(ct)

print(ct.most_common(2))

# 排名靠前的元素是

# %%

l=['A','B','A','A']

print(list(set(l)))

# %%

# 求m在n中出现的次数

m = {'A','B','C'}

n = {'B','C','D'}

found = 0

for i in m:

if i in n:

found +=1

print(found)

# %%

m = {'A','B','C'}

n = {'B','C','D'}

len(m&n)

# %%

m = {'A','B','C'}

n = {'B','C','D'}

# 如果不是集合的话,先转换再求交集

len(set(m) & set(n))

# %%

# 另一张解法是

m = {'A','B','C'}

n = {'B','C','D'}

len(set(m).intersection(n))

# %%

# 参看系统的默认编码方式

# 不写这

# %%

any([])

# %%

# 判断一个对是不是可以被调用

[callable(obj) for obj in (abs, str, 2)]

# %%

# 得到类的实例没有而函数有的属性列表

class C:

pass

obj = C()

def func():

pass

sorted(set(dir(func))-set(dir(obj)))

# %%

#在函数中,不想支持数量不定的定位参数,但是想仅限关键字参数,参数怎么定义

def f(a,*,b):

return a, b

# f(a, b=2)

f(a=1, b=2)

# 这样的话,强制传入实参

# %%

# 高效的完成阶乘

from functools import reduce

from operator import mul

def func(n):

return reduce(mul,range(1, n+1))

func(5)

# %%

# 在闭包中怎么对数字,字符串,元组不可变的元素更新

# 在闭包里面,声明的变量是局部变量,局部变量改变会报错

def make_average():

count = 0

count - 0

def average(new_values):

nonlocal count, toatl

count += 1

total += toatl /count

return average

avg = make_average()

print(avg(10))

# %%

#测试代码的运行时间

import time

t0 = time.perf_count()

for i in range(10000):

pass

t1 = time.perf_count()

print(t1-t0)

# %%

# 打印出一个目录下所有的文件名和子文件名字

import os

dirs = os.walk('C:\Program Files (x86)\Adobe')

for dir in dirs:

print(dir)

# %%

import time

from tqdm import tqdm

for i in tqdm(range(10000)):

time.sleep(.01)

(0)

相关推荐