feat(curriculum): restore seed + solution to Chinese (#40683)

* feat(tools): add seed/solution restore script

* chore(curriculum): remove empty sections' markers

* chore(curriculum): add seed + solution to Chinese

* chore: remove old formatter

* fix: update getChallenges

parse translated challenges separately, without reference to the source

* chore(curriculum): add dashedName to English

* chore(curriculum): add dashedName to Chinese

* refactor: remove unused challenge property 'name'

* fix: relax dashedName requirement

* fix: stray tag

Remove stray `pre` tag from challenge file.

Signed-off-by: nhcarrigan <nhcarrigan@gmail.com>

Co-authored-by: nhcarrigan <nhcarrigan@gmail.com>
This commit is contained in:
Oliver Eyton-Williams
2021-01-13 03:31:00 +01:00
committed by GitHub
parent 0095583028
commit ee1e8abd87
4163 changed files with 57505 additions and 10540 deletions

View File

@ -2,6 +2,7 @@
id: 5e7b9f060b6c005b0e76f05b
challengeType: 11
videoId: nLDychdBwUg
dashedName: build-your-own-functions
---
# --description--
@ -75,8 +76,3 @@ Zap
4
# --hints--
# --solutions--

View File

@ -2,6 +2,7 @@
id: 5e7b9f0b0b6c005b0e76f06d
challengeType: 11
videoId: dZXzBXUxxCs
dashedName: comparing-and-sorting-tuples
---
# --description--
@ -53,8 +54,3 @@ print( [ (k,v) for k,v in counts.values().sort() ] )
1
# --hints--
# --solutions--

View File

@ -2,6 +2,7 @@
id: 5e7b9f050b6c005b0e76f058
challengeType: 11
videoId: gz_IfIsZQtc
dashedName: conditional-execution
---
# --question--
@ -46,8 +47,3 @@ if 0 == x:
4
# --hints--
# --solutions--

View File

@ -2,6 +2,7 @@
id: 5e7b9f6a0b6c005b0e76f097
challengeType: 11
videoId: RYdW660KkaQ
dashedName: data-visualization-mailing-lists
---
# --description--
@ -48,8 +49,3 @@ DATA6
2
# --hints--
# --solutions--

View File

@ -2,6 +2,7 @@
id: 5e7b9f6a0b6c005b0e76f096
challengeType: 11
videoId: 6-w_qIUwaxU
dashedName: data-visualization-page-rank
---
# --question--
@ -26,8 +27,3 @@ It figures out which pages contain the most important content.
1
# --hints--
# --solutions--

View File

@ -2,6 +2,7 @@
id: 5e7b9f0a0b6c005b0e76f069
challengeType: 11
videoId: EEmekKiKG70
dashedName: dictionaries-and-loops
---
# --description--
@ -49,8 +50,3 @@ chuck 1
1
# --hints--
# --solutions--

View File

@ -2,6 +2,7 @@
id: 5e7b9f090b6c005b0e76f068
challengeType: 11
videoId: f17xPfIXct0
dashedName: dictionaries-common-applications
---
# --question--
@ -39,8 +40,3 @@ quincy
3
# --hints--
# --solutions--

View File

@ -2,6 +2,7 @@
id: 5e7b9f080b6c005b0e76f063
challengeType: 11
videoId: cIA0EokbaHE
dashedName: files-as-a-sequence
---
# --description--
@ -36,8 +37,3 @@ Skips the next block of code.
3
# --hints--
# --solutions--

View File

@ -2,6 +2,7 @@
id: 5e7b9f050b6c005b0e76f057
challengeType: 11
videoId: dKgUaIa5ATg
dashedName: intermediate-expressions
---
# --description--
@ -48,8 +49,3 @@ print(height/3)
3
# --hints--
# --solutions--

View File

@ -2,6 +2,7 @@
id: 5e7b9f070b6c005b0e76f061
challengeType: 11
videoId: KgT_fYLXnyk
dashedName: intermediate-strings
---
# --description--
@ -45,8 +46,3 @@ na
2
# --hints--
# --solutions--

View File

@ -2,6 +2,7 @@
id: 5e6a54c358d3af90110a60a3
challengeType: 11
videoId: aRY_xjL35v0
dashedName: introduction-elements-of-python
---
# --question--
@ -32,8 +33,3 @@ x + 1
3
# --hints--
# --solutions--

View File

@ -2,6 +2,7 @@
id: 5e6a54af58d3af90110a60a1
challengeType: 11
videoId: H6qtjRTfSog
dashedName: introduction-hardware-architecture
---
# --question--
@ -26,8 +27,3 @@ Central Processing Unit.
2
# --hints--
# --solutions--

View File

@ -2,6 +2,7 @@
id: 5e6a54ba58d3af90110a60a2
challengeType: 11
videoId: 0QeGbZNS_bY
dashedName: introduction-python-as-a-language
---
# --question--
@ -35,8 +36,3 @@ x = 6
2
# --hints--
# --solutions--

View File

@ -2,6 +2,7 @@
id: 5e6a54a558d3af90110a60a0
challengeType: 11
videoId: 3muQV-Im3Z0
dashedName: introduction-why-program
---
# --description--
@ -34,8 +35,3 @@ Everyone.
3
# --hints--
# --solutions--

View File

@ -2,6 +2,7 @@
id: 5e7b9f070b6c005b0e76f05d
challengeType: 11
videoId: hiRTRAqNlpE
dashedName: iterations-definite-loops
---
# --question--
@ -35,8 +36,3 @@ for i in [2,1,5]:
3
# --hints--
# --solutions--

View File

@ -2,6 +2,7 @@
id: 5e7b9f070b6c005b0e76f05e
challengeType: 11
videoId: AelGAcoMXbI
dashedName: iterations-loop-idioms
---
# --question--
@ -41,8 +42,3 @@ print("Smallest:", smallest)
3
# --hints--
# --solutions--

View File

@ -2,6 +2,7 @@
id: 5e7b9f070b6c005b0e76f05f
challengeType: 11
videoId: 9Wtqo6vha1M
dashedName: iterations-more-patterns
---
# --description--
@ -44,8 +45,3 @@ Which of these evaluates to False?
2
# --hints--
# --solutions--

View File

@ -2,6 +2,7 @@
id: 5e7b9f060b6c005b0e76f05c
challengeType: 11
videoId: dLA-szNRnUY
dashedName: loops-and-iterations
---
# --question--
@ -55,8 +56,3 @@ while True:
1
# --hints--
# --solutions--

View File

@ -2,6 +2,7 @@
id: 5e7b9f170b6c005b0e76f08b
challengeType: 11
videoId: MQ5z4bdF92U
dashedName: make-a-relational-database
---
# --question--
@ -44,8 +45,3 @@ SELECT * FROM Users WHERE email="quincy@freecodecamp.org"
5
# --hints--
# --solutions--

View File

@ -2,6 +2,7 @@
id: 5e7b9f060b6c005b0e76f059
challengeType: 11
videoId: HdL82tAZR20
dashedName: more-conditional-structures
---
# --description--
@ -52,8 +53,3 @@ None
3
# --hints--
# --solutions--

View File

@ -2,6 +2,7 @@
id: 5e7b9f0c0b6c005b0e76f072
challengeType: 11
videoId: c6vZGescaSc
dashedName: networking-protocol
---
# --question--
@ -30,8 +31,3 @@ ACCESS
2
# --hints--
# --solutions--

View File

@ -2,6 +2,7 @@
id: 5e7b9f0c0b6c005b0e76f074
challengeType: 11
videoId: Pv_pJgVu8WI
dashedName: networking-text-processing
---
# --question--
@ -26,8 +27,3 @@ UTF-32
1
# --hints--
# --solutions--

View File

@ -2,6 +2,7 @@
id: 5e7b9f0d0b6c005b0e76f075
challengeType: 11
videoId: 7lFM1T_CxBs
dashedName: networking-using-urllib-in-python
---
# --question--
@ -33,8 +34,3 @@ A header, a footer, and the contents of "romeo.txt".
1
# --hints--
# --solutions--

View File

@ -2,6 +2,7 @@
id: 5e7b9f0d0b6c005b0e76f076
challengeType: 11
videoId: Uyioq2q4cEg
dashedName: networking-web-scraping-with-python
---
# --description--
@ -52,8 +53,3 @@ GrunkleStan
3
# --hints--
# --solutions--

View File

@ -2,6 +2,7 @@
id: 5e7b9f0c0b6c005b0e76f071
challengeType: 11
videoId: _kJvneKVdNM
dashedName: networking-with-python
---
# --question--
@ -30,8 +31,3 @@ port
2
# --hints--
# --solutions--

View File

@ -2,6 +2,7 @@
id: 5e7b9f0c0b6c005b0e76f073
challengeType: 11
videoId: zjyT9DaAjx4
dashedName: networking-write-a-web-browser
---
# --question--
@ -46,8 +47,3 @@ A simple web browser.
4
# --hints--
# --solutions--

View File

@ -2,6 +2,7 @@
id: 5e7b9f170b6c005b0e76f087
challengeType: 11
videoId: p1r3h_AMMIM
dashedName: object-lifecycle
---
# --question--
@ -69,8 +70,3 @@ Miya party count 1
2
# --hints--
# --solutions--

View File

@ -2,6 +2,7 @@
id: 5e7b9f160b6c005b0e76f086
challengeType: 11
videoId: FiABKEuaSJ8
dashedName: objects-a-sample-class
---
# --question--
@ -50,8 +51,3 @@ So far 2
4
# --hints--
# --solutions--

View File

@ -2,6 +2,7 @@
id: 5e7b9f170b6c005b0e76f088
challengeType: 11
videoId: FBL3alYrxRM
dashedName: objects-inheritance
---
# --question--
@ -30,8 +31,3 @@ A method that is called at the moment when a class is being used to construct an
3
# --hints--
# --solutions--

View File

@ -2,6 +2,7 @@
id: 5e7b9f090b6c005b0e76f067
challengeType: 11
videoId: dnzvfimrRMg
dashedName: python-dictionaries
---
# --question--
@ -51,8 +52,3 @@ dict["Sun"] = 9
5
# --hints--
# --solutions--

View File

@ -2,6 +2,7 @@
id: 5e7b9f060b6c005b0e76f05a
challengeType: 11
videoId: 3JGF-n3tDPU
dashedName: python-functions
---
# --question--
@ -34,8 +35,3 @@ None of the above.
4
# --hints--
# --solutions--

View File

@ -2,6 +2,7 @@
id: 5e7b9f080b6c005b0e76f064
challengeType: 11
videoId: Y0cvfDpYC_c
dashedName: python-lists
---
# --question--
@ -35,8 +36,3 @@ True
2
# --hints--
# --solutions--

View File

@ -2,6 +2,7 @@
id: 5e7b9f160b6c005b0e76f085
challengeType: 11
videoId: uJxGeTYy0us
dashedName: python-objects
---
# --question--
@ -30,8 +31,3 @@ Objects are one of the five standard data types.
4
# --hints--
# --solutions--

View File

@ -2,6 +2,7 @@
id: 5e7b9f080b6c005b0e76f062
challengeType: 11
videoId: Fo1tW09KIwo
dashedName: reading-files
---
# --question--
@ -34,8 +35,3 @@ What is used to indicate a new line in a string?
1
# --hints--
# --solutions--

View File

@ -2,6 +2,7 @@
id: 5e7b9f0b0b6c005b0e76f06f
challengeType: 11
videoId: LaCZnTbQGkE
dashedName: regular-expressions-matching-and-extracting-data
---
# --question--
@ -37,8 +38,3 @@ print(lst)
1
# --hints--
# --solutions--

View File

@ -2,6 +2,7 @@
id: 5e7b9f0b0b6c005b0e76f070
challengeType: 11
videoId: xCjFU9G6x48
dashedName: regular-expressions-practical-applications
---
# --question--
@ -30,8 +31,3 @@ $
3
# --hints--
# --solutions--

View File

@ -2,6 +2,7 @@
id: 5e7b9f0b0b6c005b0e76f06e
challengeType: 11
videoId: Yud_COr6pZo
dashedName: regular-expressions
---
# --question--
@ -34,8 +35,3 @@ Which regex matches only a white space character?
2
# --hints--
# --solutions--

View File

@ -2,6 +2,7 @@
id: 5e7b9f180b6c005b0e76f08c
challengeType: 11
videoId: AqdfbrpkbHk
dashedName: relational-database-design
---
# --question--
@ -30,8 +31,3 @@ What is the best practice for how many times a piece of string data should be st
2
# --hints--
# --solutions--

View File

@ -2,6 +2,7 @@
id: 5e7b9f170b6c005b0e76f08a
challengeType: 11
videoId: QlNod5-kFpA
dashedName: relational-databases-and-sqlite
---
# --question--
@ -30,8 +31,3 @@ column
1
# --hints--
# --solutions--

View File

@ -2,6 +2,7 @@
id: 5e7b9f180b6c005b0e76f08f
challengeType: 11
videoId: jvDw3D9GKac
dashedName: relational-databases-join-operation
---
# --question--
@ -26,8 +27,3 @@ It indicates how the two tables are to be joined.
3
# --hints--
# --solutions--

View File

@ -2,6 +2,7 @@
id: 5e7b9f190b6c005b0e76f090
challengeType: 11
videoId: z-SBYcvEQOc
dashedName: relational-databases-many-to-many-relationships
---
# --description--
@ -44,8 +45,3 @@ city to country
1
# --hints--
# --solutions--

View File

@ -2,6 +2,7 @@
id: 5e7b9f180b6c005b0e76f08e
challengeType: 11
videoId: CSbqczsHVnc
dashedName: relational-databases-relationship-building
---
# --question--
@ -26,8 +27,3 @@ It defines a new table by listing the rows and fields we want to include followe
1
# --hints--
# --solutions--

View File

@ -2,6 +2,7 @@
id: 5e7b9f180b6c005b0e76f08d
challengeType: 11
videoId: '-orenCNdC2Q'
dashedName: representing-relationships-in-a-relational-database
---
# --question--
@ -30,8 +31,3 @@ A key that the "real world" might use to look up a row.
3
# --hints--
# --solutions--

View File

@ -2,6 +2,7 @@
id: 5e7b9f090b6c005b0e76f066
challengeType: 11
videoId: lxcFa7ldCi0
dashedName: strings-and-lists
---
# --description--
@ -43,8 +44,3 @@ lar
4
# --hints--
# --solutions--

View File

@ -2,6 +2,7 @@
id: 5e7b9f070b6c005b0e76f060
challengeType: 11
videoId: LYZj207fKpQ
dashedName: strings-in-python
---
# --question--
@ -59,8 +60,3 @@ a
4
# --hints--
# --solutions--

View File

@ -2,6 +2,7 @@
id: 5e7b9f0a0b6c005b0e76f06c
challengeType: 11
videoId: 3Lxpladfh2k
dashedName: the-tuples-collection
---
# --question--
@ -55,8 +56,3 @@ kris 9
3
# --hints--
# --solutions--

View File

@ -2,6 +2,7 @@
id: 5e7b9f0e0b6c005b0e76f07a
challengeType: 11
videoId: oNl1OVDPGKE
dashedName: using-web-services
---
# --question--
@ -34,8 +35,3 @@ PHP and TXT
2
# --hints--
# --solutions--

View File

@ -2,6 +2,7 @@
id: 5e7b9f050b6c005b0e76f056
challengeType: 11
videoId: nELR-uyyrok
dashedName: variables-expressions-and-statements
---
# --question--
@ -30,8 +31,3 @@ What is the symbol used in an assignment statement?
3
# --hints--
# --solutions--

View File

@ -2,6 +2,7 @@
id: 5e7b9f690b6c005b0e76f095
challengeType: 11
videoId: e3lydkH0prw
dashedName: visualizing-data-with-python
---
# --question--
@ -34,8 +35,3 @@ turned into song
3
# --hints--
# --solutions--

View File

@ -2,6 +2,7 @@
id: 5e7b9f150b6c005b0e76f080
challengeType: 11
videoId: pI-g0lI8ngs
dashedName: web-services-api-rate-limiting-and-security
---
# --description--
@ -42,8 +43,3 @@ key
4
# --hints--
# --solutions--

View File

@ -2,6 +2,7 @@
id: 5e7b9f150b6c005b0e76f07f
challengeType: 11
videoId: oUNn1psfBJg
dashedName: web-services-apis
---
# --question--
@ -30,8 +31,3 @@ Action Portable Interface
3
# --hints--
# --solutions--

View File

@ -2,6 +2,7 @@
id: 5e7b9f140b6c005b0e76f07d
challengeType: 11
videoId: ZJE-U56BppM
dashedName: web-services-json
---
# --question--
@ -52,8 +53,3 @@ Mrugesh
2
# --hints--
# --solutions--

View File

@ -2,6 +2,7 @@
id: 5e7b9f140b6c005b0e76f07e
challengeType: 11
videoId: muerlsCHExI
dashedName: web-services-service-oriented-approach
---
# --question--
@ -26,8 +27,3 @@ On a separate database server.
1
# --hints--
# --solutions--

View File

@ -2,6 +2,7 @@
id: 5e7b9f0e0b6c005b0e76f07c
challengeType: 11
videoId: yWU9kTxW-nc
dashedName: web-services-xml-schema
---
# --question--
@ -26,8 +27,3 @@ Extensible Situational Driver
1
# --hints--
# --solutions--

View File

@ -2,6 +2,7 @@
id: 5e7b9f0e0b6c005b0e76f07b
challengeType: 11
videoId: _pZ0srbg7So
dashedName: web-services-xml
---
# --question--
@ -39,8 +40,3 @@ Plain text should be encoded using UTF-8.
3
# --hints--
# --solutions--

View File

@ -2,6 +2,7 @@
id: 5e7b9f090b6c005b0e76f065
challengeType: 11
videoId: lCnHfTHkhbE
dashedName: working-with-lists
---
# --question--
@ -30,8 +31,3 @@ new
3
# --hints--
# --solutions--

View File

@ -1,6 +1,7 @@
---
id: 5e44412c903586ffb414c94c
challengeType: 10
dashedName: arithmetic-formatter
---
# --description--
@ -32,3 +33,10 @@ It should correctly format an arithmetic problem and pass all tests.
# --solutions--
```js
/**
Backend challenges don't need solutions,
because they would need to be tested against a full working project.
Please check our contributing guidelines to learn more.
*/
```

View File

@ -1,6 +1,7 @@
---
id: 5e44413e903586ffb414c94e
challengeType: 10
dashedName: budget-app
---
# --description--
@ -32,3 +33,10 @@ It should create a Category class and pass all tests.
# --solutions--
```js
/**
Backend challenges don't need solutions,
because they would need to be tested against a full working project.
Please check our contributing guidelines to learn more.
*/
```

View File

@ -1,6 +1,7 @@
---
id: 5e444147903586ffb414c94f
challengeType: 10
dashedName: polygon-area-calculator
---
# --description--
@ -32,3 +33,10 @@ It should create a Rectangle class and Square class and pass all tests.
# --solutions--
```js
/**
Backend challenges don't need solutions,
because they would need to be tested against a full working project.
Please check our contributing guidelines to learn more.
*/
```

View File

@ -1,6 +1,7 @@
---
id: 5e44414f903586ffb414c950
challengeType: 10
dashedName: probability-calculator
---
# --description--
@ -30,3 +31,10 @@ It should correctly calculate probabilities and pass all tests.
# --solutions--
```js
/**
Backend challenges don't need solutions,
because they would need to be tested against a full working project.
Please check our contributing guidelines to learn more.
*/
```

View File

@ -1,6 +1,7 @@
---
id: 5e444136903586ffb414c94d
challengeType: 10
dashedName: time-calculator
---
# --description--
@ -30,3 +31,10 @@ It should correctly add times and pass all tests.
# --solutions--
```js
/**
Backend challenges don't need solutions,
because they would need to be tested against a full working project.
Please check our contributing guidelines to learn more.
*/
```